Python for Networking & Systems Administration / SysAdmin

Gain Essentials Python Scripting Skills for Task Automation and Network Programming

TTPS4824

Introductory

4 Days

Course Overview

Targeted for network administrators looking to automate administrative tasks across a set of distributed clients Python for Networking / Systems Administrators is an introductory and beyond-level practical, hands-on Python training course that leads the student from the basics of writing and running Python scripts to more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules with a focus on network-focused modules such as SSH, Git, and RESTful services. This comprehensive, practical course provides an in-depth exploration of working with the programming language, not an academic overview of syntax and grammar.  Students will immediately be able to use Python to complete these types of tasks in the real world.

Course Objectives

This course combines engaging, informed instructor presentations, demonstrations and discussions with extensive machine-based student labs and practical project work. Throughout the course students will learn to write essential Python scripts using the most current and efficient skills and techniques.

Working within in an engaging, hands-on learning environment, guided by our expert instructor, students will learn to:

  • Create working Python scripts following best practices
  • Use python data types appropriately
  • Read and write files with both text and binary data
  • Search and replace text with regular expressions
  • Get familiar with the standard library and its work-saving modules
  • Use lesser known but powerful Python data types
  • Create "real-world", professional Python applications
  • Work with dates, times, and calendars
  • Know when to use collections such as lists, dictionaries, and sets
  • Understand Pythonic features such as comprehensions and iterators
  • Write robust code using exception handling
  • Automate network administrative tasks across distributed clients using SSH, REST, and More

Need different skills or topics?  If your team requires different topics or tools, additional skills or custom approach, this course may be further adjusted to accommodate.  We offer additional python, networking, web development, data science, machine learning and other related topics that may be blended with this course for a track that best suits your needs. Our team will collaborate with you to understand your needs and will target the course to focus on your specific learning objectives and goals.

Course Prerequisites

This introductory-level Python course is appropriate for advanced users, system administrators and web site administrators who want to use Python to support their server installations, as well as anyone else who wants to automate or simplify common tasks with the use of Python scripts.  Students should have basic development experience in any programming language, along with a working, user-level knowledge of Unix/Linux, Mac, or Windows.

Please see the Related Courses tab for specific Pre-Requisite courses, Related Courses that offer similar skills or topics, and next-step Follow-On Courses and Learning Path recommendations.

Course Agenda

Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most.

Chapter 1: An Overview of Python

  • What is Python?
  • The Birth of Python.
  • About Interpreted Languages
  • Advantages of Python
  • Disadvantages of Python
  • How to get Python
  • Which version of Python?
  • The end of Python 2
  • Getting Help
  • One day on Dagobah

Chapter 2: The Python Environment

  • Starting Python
  • If the interpreter is not in your PATH
  • Using the interpreter
  • Trying out a few commands
  • Running Python scripts (explicit)
  • Running Python scripts (implicit)
  • Using pydoc
  • Python Editors and IDEs

Chapter 3: Getting Started

  • Using variables
  • Keywords and Builtins
  • Variable typing
  • Strings
  • Single-delimited string literals
  • Triple-delimited string literals
  • Raw string literals
  • Unicode characters
  • String operators and methods
  • String Methods
  • Numeric literals
  • Math operators and expressions
  • Converting among types
  • Writing to the screen
  • String Formatting
  • Legacy String Formatting
  • Command line parameters
  • Reading from the keyboard

Chapter 4: Flow Control

  • About flow control
  • What’s with the white space?
  • if and elif
  • Conditional Expressions
  • Relational Operators
  • Boolean operators
  • while loops
  • Alternate ways to exit a loop

Chapter 5: Array types

  • About Array Types
  • Lists
  • Tuples
  • Indexing and slicing
  • Iterating through a sequence
  • Unpacking tuples
  • Nested sequences
  • Functions for all sequences
  • Using enumerate()
  • Operators and keywords for sequences
  • The range() function
  • List comprehensions
  • Generator Expressions

Chapter 6: Working with Files

  • Text file I/O
  • Opening a text file
  • The with block
  • Reading a text file
  • Writing to a text file

Chapter 7: Dictionaries

  • About dictionaries
  • When to use dictionaries?
  • Creating dictionaries
  • Getting dictionary values
  • Iterating through a dictionary
  • Reading file data into a dictionary
  • Counting with dictionaries
  • About sets
  • Creating Sets
  • Working with sets

Chapter 8: Functions

  • Defining a function
  • Returning values
  • Function parameters
  • Variable scope

Chapter 9: Sorting

  • Sorting Overview
  • The sorted() function
  • Custom sort keys
  • Lambda functions
  • Sorting nested data
  • Sorting dictionaries
  • Sorting in reverse
  • Sorting lists in place

Chapter 10: Errors and Exception Handling

  • Syntax errors
  • Exceptions
  • Handling exceptions with try
  • Handling multiple exceptions
  • Handling generic exceptions
  • Ignoring exceptions
  • Using else
  • Cleaning up with finally

Chapter 11: Using Modules

  • What is a module?
  • Creating Modules
  • The import statement
  • Where did __pycache__ come from?
  • Module search path
  • Packages
  • Example
  • Module Aliases
  • When the batteries aren’t included

Chapter 12: An Introduction to Python Classes

  • About O-O programming
  • Defining classes
  • Constructors
  • Instance methods
  • Properties
  • Class methods and data
  • Static Methods
  • Private methods
  • Inheritance
  • Untangling the nomenclature

Chapter 13: Regular Expressions

  • Regular Expressions
  • RE Syntax Overview
  • Finding matches
  • RE Objects
  • Compilation Flags
  • Groups
  • Special Groups
  • Replacing text
  • Replacing with a callback
  • Splitting a string

Chapter 14: Network Programming

  • Grabbing a web page
  • Consuming Web services
  • HTTP the easy way
  • sending e-mail
  • Email attachments
  • Remote Access
  • Copying files with Paramiko

Chapter 15: Sockets

  • Sockets
  • Socket options
  • Server concepts
  • Client concepts
  • Application protocols
  • Forking servers

Chapter 16: Multiprogramming

  • Multiprogramming
  • What Are Threads?
  • The Python Thread Manager
  • The threading Module
  • Threads for the impatient
  • Creating a thread class
  • Variable sharing
  • Using queues
  • Debugging threaded Programs
  • The multiprocessing module
  • Using pools
  • Alternatives to multiprogramming

Chapter 17: Closures

  • What is a closure?
  • Why do I need one?
  • How can I make one?
  • Factory Function
  • Using functools.partial()

Chapter 18: Serializing Data: XML, XPath, JSON, CSV

  • About XML
  • Normal Approaches to XML
  • Which module to use?
  • Getting Started With ElementTree
  • How ElementTree Works
  • Elements
  • Creating a New XML Document
  • Parsing An XML Document
  • Navigating the XML Document
  • Using XPath
  • About JSON
  • Reading JSON
  • Writing JSON
  • Customizing JSON
  • Reading CSV data
  • Nonstandard CSV
  • Using csv.DictReader
  • Writing CSV Data
  • Pickle

Course Materials

Hands-on Setup Made Simple!  All course software (limited versions, for course use only), courseware files, hands-on lab guides, labs and solutions, data sets and resources (as applicable) are provided for you in our “easy access / no install required” high-speed remote lab environment.  In most cases, we can also offer local (non-cloud) set up as an alternative. Either way, our dedicated live tech team works with every student to ensure everyone is set up with working access and ready to go prior to every course start date, ensuring a smooth delivery and great hands-on experience. All your coursework can be accessed or downloaded after class, so you never lose your work or materials. Please ask for details.

Raise the bar for advancing technology skills

Attend a Class!

Live scheduled classes are listed below or browse our full course catalog anytime

Special Offers

We regulary offer discounts for individuals, groups and corporate teams. Contact us

Custom Team Training

Check out custom training solutions planned around your unique needs and skills.

EveryCourse Extras

Exclusive materials, ongoing support and a free live course refresh with every class.

Attend a Course

Please see the current upcoming available open enrollment course dates posted below. Please feel free to Register Online below, or call 844-475-4559 toll free to connect with our Registrar for assistance. If you need additional date options, please contact us for scheduling.

Course Title Days Date Time Price
Python for Networking & Systems Administration / SysAdmin 4 Days Mar 30 to Apr 2 10:00 AM to 06:00 PM EST $2,495.00 Register
Python for Networking & Systems Administration / SysAdmin 4 Days May 4 to May 7 10:00 AM to 06:00 PM EST $2,495.00 Register
Python for Networking & Systems Administration / SysAdmin 4 Days Jun 8 to Jun 11 10:00 AM to 06:00 PM EST $2,495.00 Register
Python for Networking & Systems Administration / SysAdmin 4 Days Jul 20 to Jul 23 10:00 AM to 06:00 PM EST $2,495.00 Register
Python for Networking & Systems Administration / SysAdmin 4 Days Aug 31 to Sep 3 10:00 AM to 06:00 PM EST $2,495.00 Register

New Site, BIG Savings!
We're celebrating the launch of our lonnngggg awaited new site with with *50% off all 2021 Public Classes* booked by March 31!  Check out our Current Offers for Individuals, Teams and Organizations to Learn for Less!

See our latest Offers and Promotions

Learn. Explore. Advance!

Extend your training investment! Recorded sessions, free re-sits and after course support included with Every Course
Trivera MiniCamps
Gain the skills you need with less time in the classroom with our short course, live-online hands-on events
Trivera QuickSkills: Free Courses and Webinars
Training on us! Keep your skills current with free live events, courses & webinars
Trivera AfterCourse: Coaching and Support
Expert level after-training support to help organizations put new training skills into practice on the job

The voices of our customers speak volumes

Special Offers
Limited Offer for most courses.

SAVE 50%

Learn More