Skip to main content
Get a Quote
Course Enquiry
Contact Us


We are open for classroom training with strict Covid-19 Level 1 protocols in place.


Python is now one of the most used Programming languages. Python general purpose, is easy to use and very high level.

In this course you will learn how to use some of the more advanced features of Python.  Including Adv Iteration, Decorators, Meta Classess, Multi Processing etc.

Delivery Methods

Delivery Method Duration Price (excl. VAT)
Fulltime 2 Days R 7,660.00
Webinar 2 Days R 6,100.00

Discounts Available

Save up to 10% by booking and paying 10 business days before the course.


Download Brochure

Information may change without notice.


Programmers with knowledge of python.



Python Programming Course or equivalent experience


Course Outline / Curriculum

 Functional Programming

  •  Functions
  •  optional Arguments
  •  lambda
  •  Simple lambda functions
  •  Map
  •  Filter
  •  List Comprehension
  •  Generator expression
  •  Generator Functions

 Iteration Patterns in Python

  •  Itertools
  •  Abstracting iteration
  •  Iterable Pattern
  •  Low Level Iteration

Object Orientation

  • Modules
  • import
  • import invocation
  • class
  • class variable
  • methods
  • instance vars
  • constructor
  • inheritance
  • exceptions
  • raising exceptions
  • traceback
  • object special attributes
  • descriptors


  •  Closure
  •  Applying closure
  •  Decorator Equivalent
  •  Decorators with args
  •  Example in Documentation


  •  Class Decorator
  •  Class Decorator
  •  Apply Class Decorator
  •  Classes are instances of type
  •  Create Class with type
  •  Default MetaClass is type
  •  Example MetaClass
  •  __new__
  •  Using __new__() to alter class properties


  •  With and Context Managers
  •  Opening Files
  •  With equivalent
  •  How it works
  •  file context
  •  My Context Manager
  •  Output
  •  Context Decorator

Regular Expressions

re module

Profiling and Performance

  • Calling cProfile
  • The Muppy Module
  • The Muppy Module
  • You can create summaries
  • Compare them with other summaries
  • The tracker module
  • Reference Browser
  • ConsoleBrowser
  • Performance Tips
  • Choose the Right Data Structure
  • Sorting
  • String Concatenation
  • Loops
  • Avoiding dots


  • GIL
  • Thread and Threading
  • Using threading.Thread
  • Thread constructor args
  • Two Approaches to Thread
  • Trivial Example
  • Local Storage
  • Safe Multi Threading
  • Locking
  • Problems with Simple Locking
  • Re-Entrant Locks (RLock
  • Semaphores
  • Events
  • Conditions
  • Queue Module

Parallell Processing

  • The Process class
  • Forking other processes
  • os.system
  • os.popen
  • subprocess
  • subprocess.Popen class
  • Popen arguments
  • Popen examples
  • subprocess functions

Async Programming

  • Concurrent Futures
  • Coroutines
  • Asycio/Trollius
  • Future and Callbacks
  • Async IO 
  • Asynchronous routines

Schedule Dates and Booking

There are currently no scheduled dates.

Please note that this course needs a minimum of 6 delegates to schedule a course. You can choose to be added to the waiting list by clicking the button below and we will contact you when we have enough delegates interested. Should we not get enough delegates, we will refund or credit your paid booking.

Add me to the waiting list

Should you need this course urgently, the following options are available:

  1. Pay for 6 delegates (whether you have them or not) and we will schedule the course as soon as possible.
  2. If you have fewer delegates and cannot pay for 6, we can negotiate a shortened course where some of the time will be spent in blended learning - watching videos and doing tutorials and exercises with some contact time with the trainer. We would want to discuss what your core needs are so that we cover those aspects. You need to have paid for 3 delegates at least.