Python Programming for Developers


A 4 day introduction to Python Programming for software developers that covers basic language constructs, file I/O, OO programming, command line processing, managing processes and XML web clients. The focus is on using best practices and techniques to develop professional quality programs and scripts. Optionally this course can be customized by adding modules on Numeric Python and Plotting that are described the companion course Python Programming for Scientists.

Duration: 4 days

Who is it for: Computer Programmers who wish to learn Python

Layout: This course comprises a mix of theory, demonstrations and hands on exercises. Approximately 50% of the time is hands-on.


  • Understand Python syntax, flow control, data structures and objects
  • Read and write files
  • Develop scripts for use in a Linux or Windows environment
  • Understand best practices for error handling, recovery and logging
  • Manipulate data using simple and complex regular expressions
  • Design and develop user defined classes for handling structured data
  • Read data from a web server


Python Introduction

  • Variables and Objects
  • Console I/O
  • IF statements and indentation

Python Objects

  • Object notation
  • String and numeric data
  • WHILE loop


  • Functions
  • Arguments and return values
  • Importing modules


  • List and Tuples
  • FOR loop
  • List comprehension


  • Handling exceptions with TRY-EXCEPT statements
  • Raising exceptions
  • Exception safe code and the WITH statement

File Handling

  • Reading and writing files
  • Working with the file system

Data Collections

  • Sets
  • Dictionaries

Working with modules

  • Organising modules
  • Building Libraries

Command line processing

  • Command line processing
  • Command line options
  • Exit codes and exit functions

Managing processes

  • Using subprocess to run commands
  • Reading sub command’s STDOUT and STDERR
  • Writing to a sub command’s STDIN

Advanced Functions

  • Variable arguments lists and named argument lists
  • Function pointers
  • Lambdas and generators

Classes and Data Structures

  • Classes and objects
  • Constructors
  • Object methods and special methods

Designing Classes

  • Supporting subscripts and slices
  • Building an iterator class
  • Working with the resource manager

Text Handling with Regular Expressions

  • Basic pattern matching
  • Pattern repetitions
  • Capture groups

File processing

  • Working with CSV files
  • Working with fixed field files

Web Clients

  • Reading data from a web page URL
  • Parsing XML using ElementTree

Calling C Code

  • Calling C functions
  • Passing data between C and Python

Enquire about this course

"*" indicates required fields

By submitting this form, you agree to our Privacy Policy.
This field is for validation purposes and should be left unchanged.