<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version

Updated June 2026

Mastering Python Programming

Class Duration

35 hours of live training delivered over 5 days.

Student Prerequisites

  • Some prior exposure to any programming or scripting language is useful
  • Comfort with Unix/Linux, macOS, or Windows at a user level is assumed
  • No prior Python experience required

Target Audience

The course is aimed at experienced technology users who are adding Python to their toolkit. That typically includes developers moving into web or backend projects, administrators maintaining server environments, and anyone who wants to automate routine work through scripting. Participants who prefer a gentler ramp, or who only need part of this material, may want to look at Introduction to Python and Intermediate Python instead.

Description

This course covers the Python language from the ground up through material that is useful on the job. It starts with writing and running simple scripts and moves through file handling, regular expressions, binary data, and the parts of the standard library that most programmers reach for every day. Python-specific constructs - tuples, slicing, comprehensions, formatted output, and the like - get a close look. The emphasis is on using the language to do real work rather than on grammar for its own sake, so participants finish the week ready to apply what they have learned.

Class time is split roughly evenly between discussion and lab work. Each topic is introduced, demonstrated, and then exercised through guided coding. Participants write Python throughout the course and leave with working examples they can adapt to their own projects. The course is taught on a current Python release (3.13+, with 3.14 features highlighted where relevant).

Learning Outcomes

  • Write Python scripts that follow idiomatic conventions
  • Choose and apply Python's built-in data types effectively
  • Read from and write to files containing text or binary content
  • Match, extract, and transform text using regular expressions
  • Navigate and use commonly needed modules from the standard library
  • Apply specialized container types beyond the basics
  • Structure applications suitable for day-to-day production use
  • Manipulate dates, times, and calendar data
  • Select the right collection type - list, dict, set, or otherwise - for a given task
  • Work comfortably with comprehensions, iterators, and generators
  • Build reliable code using exception handling

Training Materials

Comprehensive courseware is distributed online at the start of class. All students receive a downloadable MP4 recording of the training.

Software Requirements

  • Permission to install Python 3.13 or later (installing with uv is demonstrated in class)
  • Text editor or IDE (VS Code with the Python extension recommended)
  • Terminal/command-line access on Linux, macOS, or Windows
  • Internet access for installing packages
  • If a local environment is not possible, a cloud-based environment can be provided

Training Topics

Introduction to Python

  • Python at a glance
  • A short history of the language
  • Strengths and trade-offs
  • Looking things up with pydoc

Running Python Code

  • Launching the interpreter
  • Interactive sessions
  • Executing script files
  • Cross-platform execution on Unix and Windows
  • Choosing an editor or IDE

Language Basics

  • Assigning and using variables
  • Working with built-in functions
  • Strings
  • Numeric types
  • Converting between types
  • Printing to the screen
  • Reading command-line arguments

Conditionals and Loops

  • Overview of control flow
  • Indentation as syntax
  • if / elif / else branching
  • Comparison and logical operators
  • while loops
  • break, continue, and else on loops

Sequences

  • Sequence concepts
  • Lists and their methods
  • Tuples as immutable sequences
  • Indexing and slicing
  • Looping over sequences
  • Nested data
  • Built-in sequence operations, keywords, and operators
  • List comprehensions
  • Generator expressions

File Input and Output

  • File objects overview
  • Opening text files
  • Reading text content
  • Writing text content
  • Reading and writing binary data
  • Interpreting binary layouts with struct

Mappings and Sets

  • Dictionary fundamentals
  • Constructing dictionaries
  • Looping over dictionary contents
  • Set fundamentals
  • Constructing sets
  • Set operations

Defining Functions

  • Function syntax
  • Arguments and parameters
  • Scope rules
  • Nested functions
  • Return values

Sorting Data

  • sorted() basics
  • Custom key functions
  • Lambdas as keys
  • Sorting different collection types
  • Using operator.itemgetter()
  • Descending order

Exception Handling

  • Syntax errors versus runtime errors
  • Raising and catching exceptions
  • try / except / else / finally
  • Handling several exception types
  • Suppressing exceptions safely

Organizing Code with Modules

  • The import statement
  • How Python finds modules
  • Writing your own modules
  • Packages and init.py
  • Renaming imports with aliases

Object-Oriented Programming

  • Object orientation in Python
  • Class syntax
  • Constructors with init
  • Instance methods
  • Attributes and instance state
  • Property decorators
  • Class-level attributes and methods

Pattern Matching with Regular Expressions

  • Regular expression syntax
  • Compiled pattern objects
  • Searching and matching
  • Compilation flags
  • Capturing and named groups
  • Substitution
  • Splitting on patterns

Standard Library Essentials

  • The sys module
  • Running external programs
  • Math operations
  • Generating random numbers
  • Reading CSV data

Dates, Times, and Calendars

  • Using datetime objects
  • Converting timestamps
  • Parsing dates from text
  • Formatting dates for output
  • The calendar module

File System Operations

  • Paths and filenames with pathlib
  • Testing for files and directories
  • File permissions and metadata
  • Traversing directory trees
  • Input pipelines with fileinput
  • Copy, move, and delete with shutil

Advanced Data Structures

  • defaultdict and Counter
  • Pretty-printing with pprint
  • Archive formats: zip, gzip, tar, and friends
  • Persisting data between runs

Networking and Remote Access

  • HTTP with requests
  • Fetching web content
  • Sending email
  • Running commands remotely over SSH
  • Transferring files with FTP

Building Complete Applications

  • Reading input files Unix-style
  • Parsing command-line options
  • Detecting the current platform
  • Adding logging
<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version