Advanced Python Programming


  • To master the rich set of Python libraries and modules.
  • Use Object Oriented programming techniques.
  • Use various advanced programming techniques available in Python.


  • This is an advanced Python course suitable for people who already have Python programming background.

Course Format

  • Duration of the course is 32 academic hours. (Usually 4 days).
  • The course includes approximately 40% hands on lab work.


  • Beginner Python course
  • Experience with the basics of Python


Data types advanced programming techniques

  • Advanced uses of built-in data types (including slices on sequences).
  • Functional programming (lambda, map, reduce, filter, zip).
  • Comprehensions (list, dictionary, and set).

Object Oriented Programming in Python

  • Objects in Python
  • Classes
  • Instances
  • Scoping issues
  • Class methods
  • Instance methods
  • Properties
  • Overloading (with and without the operator module).

Iterators and Generators

  • Iterators (including sorted and reversed, and use of itertools)
  • Generators (including generator comprehensions and pipelines)
  • Decorators

Advanced programming techniques

  • Unit Test Framework (brief introduction)
  • The 'with' statement
  • Optimizing Python code
  • Design patterns
  • Forks to processes and threads
  • Networking, Servers & Clients - time permitting
  • Asynchronous programming in Python

Web development

  • Web development using WSGI
  • Web development using Flask

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