Skip to main content
Get a Quote
Course Enquiry
Contact Us

COVID-19 Lockdown

Leading Training is online and available during the Covid-19 Shutdown.

Our staff are working from home and can do the following:

  • Webinar training and e-learning
  • Consulting
  • Development work
  • Support

We can provide remote assistance to anyone who needs it, however as an IT support company we are willing to provide emergency support to companies that are essential service providers.

If you require any help from us please make use of the live chat below or email


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.

Base Cost


Calculate Discount

  I will bring my own PC (less $66.00)
  I will book and pay 10 business days before the course (less $76.60)


If you are currently resident in South Africa you will need to pay VAT at 15%.


2 Days


Download Brochure

Information may change without notice.

Delivery Method

Instructor Led classroom based training. Scheduled classes are normally held in Woodmead - near to Sandton in Johannesburg, Gauteng, South Africa. Stationary and textbook included. Refreshments, including 2 tea breaks and a cooked meal for lunch are provided. Contact hours are between 9am to 4pm.


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

To apply for a booking, click on the relevant "Book Now" button below.
Note: places are only fully secured once payment has been made.

Start Date Branch Duration  
Mon 22 Jun 2020 Woodmead 2 Days Book Now
Mon 14 Sep 2020 Woodmead 2 Days Book Now