Python Programming


  • To be able to write programs in Python.
  • To master the rich set of Python libraries and modules.
  • Understand procedural control flow in Python
  • Use Object Oriented programming techniques


  • This is a beginner course suitable for anyone wanting to use Python for developing applications, writing test for QA or using it for system administration.

Course Format

  • Duration of the course is 24-32 academic hours. (Usually 3-4 days).
  • The course includes approximately 40% hands on lab work.
  • In the 4 day long version we allocate more time for exercises and have more time for individual help.
  • The course can be given in either using Python 2 or Python 3


  • Basic programming background in a programming language such as C, Java, Javascript, Perl, PHP or Ruby, just to name a few.
  • Experience with a text editor like emacs, vi, pico or notepad.
  • Understanding of files and directories.


Introduction to Python

  • Installing Python
  • Where and why to use Python
  • Using the Python interactive interpreter
  • Documentation and how to get help?
  • Indentation

Scalar types and operators

  • Strings
  • Numbers
  • Split
  • String slices
  • Immputable strings

Collection types and operators

  • Lists
  • List slices
  • Tuples
  • Dictionaries (hashes)
  • Sets
  • Sorting
  • Queues
  • Stack
  • Collections
  • Iterables
  • Mutable and immutable

Functions subroutines

  • Function parameters
  • Positional parameters
  • Named parameters
  • Default values
  • Optional parameters
  • Return values
  • Function documentation
  • Lambda functions

Control flow

  • For loops
  • While loops
  • Loop controls
  • Conditionals
  • Chained comparison
  • Enumerate
  • Boolean and logical operators


  • print
  • print formatting
  • read/write files

Regular expression (pattern matching)

  • Matching all
  • Searching for a single match
  • Meta characters
  • Character classes
  • Special character classes
  • Quantifiers
  • Alternatives
  • Modifier flags
  • Anchors
  • Back-references
  • Substitution
  • Split

The Python standard library

  • Filesystem related functions
  • Running external processes

Creating modules

  • Loading a module
  • Finding a module in a private directory
  • Changing the search path to a relative directory
  • Importing selected functions
  • Namespaces
  • Creating executable module

Exception handling

  • Creating non-fatal warnings
  • Catching exceptions
  • Handling exceptions
  • Throwing a new exception
  • The final block
  • Creating your own exception

Object Oriented Programming

  • Defining classes
  • Initializing objects
  • Methods
  • Attributes or members
  • The self
  • Inheritance

Additional uses

  • Installing and using 3rd party modules
  • Writing simple web scraping program
  • Writing simple Web application
  • Accessing SQL databases
  • Reading and writing Excel files

Let's talk

If you would like to bring this course to your organization, let's talk about it! You can reach me via email at or you can go ahead and schedule a chat:

Schedule a call