Exciting News! Systematix is rebranding to Future Savvy. Same great services, with a fresh new look. Learn More

Python Programming Advanced

4 Day Instructor-led
course icon

Course Information

Take your Python skills further with our Advanced Python course. Delve into object-oriented programming with classes and inheritance, explore Python's object model and metaprogramming. Master design patterns including iterator, decorator, and factory patterns. Sharpen your testing with Python's unit test library and learn test-driven development. Enhance your debugging skills, manage exceptions, and write maintainable code with best practices in coding standards, documentation, and reproducible environments. Learn code re-use through packaging, and optimise for performance with threading and asynchronous programming. Finally, understand functional programming within Python's capabilities.

Course Outline

1. Object Oriented Programming
  • Classes, instances, constructors, attributes and methods
  • Python's object model, special methods and protocols
  • Properties, slots, abstract classes
  • Inheritance and composition, polymorphism
  • Meta programming
2. Design Patterns
  • Iterator design pattern, iter() and next(), generators, generator expressions, generator functions, classes as iterators
  • Decorator design pattern, functions as first class objects, monkey patching, enclosures, variadic function parameters, decorator factories, decorating a class
  • Proxy pattern, lazy loading
  • Factory pattern
  • Template pattern
  • Observer pattern
3. Automated Testing
  • Python's unit test library, pytest
  • Test coverage, mocking
  • Test driven development (TDD)
  • Testing with date and time
4. Logging, Debugging and Exceptions
  • • Simple to advanced logging, logging handlers, configuration
  • Debugging tools and tips
  • Raising and handling exceptions
5. Maintainable Code
  • Coding standards, type hints, refactoring and linting
  • Documentation
  • Reproducible coding environments
6. Code Re-use
  • Importing, standard library, Python Package Index (PyPI)
  • Packaging your code, submitting a package to PyPI
7. Optimising
  • Optimising steps
  • Timing and profiling
  • Optimising for CPU usage and for memory usage
  • Threads versus processes
  • Multi threading and multi processing
  • Producer-consumer pattern
  • Thread and process pools
  • Asynchronous programming
8. Functional Programming and Python
  • Pros, cons and alternatives
  • Map, filter, reduce, lambda
  • Other FP-related Python functions

Dates & Prices

Attend one of our public Python courses:

Small Class Sizes

Maximum of 6 students per course.

Reference Manual

High quality reference manual supporting the topics covered.

Post Course Support

Unlimited post course email support on the course topics.

Delivery Options:
Choose a location...
4 Day Course
Tue, 27 May 2025 to Fri, 30 May 2025
£2245
Tue, 25 Nov 2025 to Fri, 28 Nov 2025
£2245

Private Courses

We can arrange your own private Python course.

Tailored

Have us build a custom private course tailored to your needs.

Cost Effective

If you are looking to training a group of people private courses can be very cost effective.

Post Course Support

Unlimited post course email support on the course topics.

What Our Clients Think

As usual a first class training course.

Wendy Thomas - Aldi Stores Ltd

This course was excellent and I am delighted with how much I have achieved. The trainer was very friendly and approachable.

Rosie Heath - Licensed Trade Charity

The pace he delivered the course was perfect and he explained everything so clearly and in a way I could understand.

Jessica Homer - All About Food

I took so much away from this course and felt Stuart's teaching method was exceptional.

Rowanne Kiehl - SSE

The trainer was an amazing lecturer and the vba course was very usefull and well structured. Thank you.

Veronika Panton - Haven Power

This has been by far one of the most useful and well planned/executed training courses I have ever attended. For this to have been achieved remotely just adds to how impressive it was managed.

Trevor Stratton - Lincolnshire County Council

Related Courses

Next on Wed 19 Feb
Format:
Virtual or Classroom
Length:
3 Days
  • Intro to foundational Python concepts.
  • Operators, controls, and data handling.
  • Data storage techniques.
  • Code structuring and OOP.
  • Practical applications: files and databases.
  • Dive into Python's ecosystem and libraries.
Next on Tue 27 May
Format:
Virtual or Classroom
Length:
4 Days

    • Explore Python's advanced object-oriented programming.
    • Master design patterns and automated testing.
    • Enhance debugging and maintainable coding practices.
    • Optimise code for performance and reusability.