Python Programming 2

2 Day Course
Hands On
Code PYP2

Book Now - 3 Delivery Methods Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


The Python Programming 2 course comprises sessions dealing with advanced object orientation, iterators and generators, comprehensions, decorators, multithreading, functional programming, web services, and unit testing.

The delegate will learn how to exploit advanced features of the Python language to build complex and efficient applications.

Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.


The delegate will learn and acquire skills as follows:

  • Encapsulating classes
  • Exploiting polymorphism using inheritance and mixins
  • Associating objects via composition and aggregation
  • Working with static members
  • Using iterators as an alternative to for
  • Constructing custom iterators
  • Constructing functions that yield generators
  • Manipulating lists, sets, and dictionaries using comprehension
  • Exploiting aspect oriented programming using decorators
  • Writing multithreaded code
  • Sharing data between threads
  • Processing collections using lambdas
  • Building RESTful clients
  • Building RESTful APIs
  • Testing units of code

Target Audience

The Python Programming 2 course is designed for existing Python developers who have a good grounding in the basics and want to exploit some of the advanced features of the language.

For the delegate for whom Python is their first programming language, we recommend taking the Python Programming 1 course first, then taking some time to practice the skills gained, before returning to take the Python Programming 2 course.

Additional Information

  • Course technical content is subject to change without notice.
  • Course content is structured as sessions, this does not strictly map to course timings. Concepts, content and practicals often span sessions.

Training Partners

We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.


Hide all

Advanced Object Orientation (9 topics)

  • The self Keyword
  • Constructors and Destructors
  • Encapsulation
  • Inheritance
  • Polymorphism
  • Abstract Classes
  • Multiple Inheritance and Mixins
  • Composition and Aggregation
  • Static Members

Iterators & Generators (5 topics)

  • Iterables
  • Iterators
  • Custom Iterators
  • Generators
  • Yield vs. Return

Comprehensions (4 topics)

  • List Comprehension
  • Set Comprehension
  • The zip Function
  • Dictionary Comprehension

Decorators (5 topics)

  • Decorators
  • Decorator Functions
  • Decorator Annotations
  • Decorator Use Cases
  • Labs

Multithreading (9 topics)

  • Threads
  • Multithreading
  • Thread Construction
  • Thread Execution
  • Thread Sleep
  • Joins
  • Data Sharing
  • Synchronisation
  • Multithreading vs. Multiprocessing

Functional Programming (6 topics)

  • Functional Programming
  • Lambdas
  • Immutability
  • Mapping
  • Filtering
  • Reducing

Web Services (5 topics)

  • RESTful Web Services
  • JSON Data
  • CRUD and HTTP
  • RESTful Clients
  • RESTful APIs

Unit Testing (6 topics)

  • Unit Testing Terminology
  • Test Classes
  • Test Fixtures
  • Test Cases
  • Assertions
  • Test Runners


Delegates should be able to build Python applications that exploit all fundamental elements of the language including variables and expressions, conditions and loops, functions, objects, and lists.

This knowledge can be gained by attendance on the pre-requisite Python Programming 1 course.

Additional Learning

The courses below may help you meet the knowledge level required to take this course.

Scheduled Dates

Please select from the dates below to make an enquiry or booking.


Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.

Code Location Duration Price May Jun Jul Aug Sep Oct
Virtual Classroom (London)
3 Days $1,955

Course PDF


Share this Course


Recommend this Course