follow-up Python course for developers who want to master advanced features: classes, decorators, generators, modules and concurrency.

  • Delve into advanced Python features
  • Work with classes, decorators and generators
  • Learn to apply multithreading and multiprocessing
  • Classroom-based in a small group with an experienced trainer
  • Directly applicable in your own projects

In-company

Recommended number of days: None
Group: up to a maximum of 8 people
Location: In-company, throughout the Netherlands
Language: Dutch or English
Investment: on request
Are there any other wishes or requirements? We can tailor the course to your needs.

You know the basics of Python and want to take things further. In this follow-up course you learn to work with the Python data model, object-oriented programming at a higher level, decorators, generators and concurrency. This allows you to write code that is more professional, faster and easier to maintain.

Description

Python is a versatile and powerful programming language used for scripting, web development, data science, machine learning and automation. Anyone who wants to go beyond the basics soon discovers a rich world of advanced features that make your code more compact, faster and more elegant.

In this follow-up course you go deeper into the Python data model with its dunder methods, into classes and inheritance, and into writing reusable components. You work with decorators, iterators, generators, context managers and type hinting. You also learn how to use standard modules such as os, sys, datetime, itertools and re effectively.

The final parts cover concurrency: multithreading and multiprocessing. You finish with an introduction to graphical programming in Python. By the end of the course you will be writing Python code at a professional level.

Topics

  • The Python data model and dunder methods
  • Higher order functions, decorators and lambda expressions
  • Classes, attributes, slots and properties
  • Class inheritance and sub-classes
  • Class attributes and static attributes
  • Data classes and abstract classes
  • Enumerations and type hinting
  • Iterators and iterables
  • Generators and context managers
  • Standard modules: os, sys, datetime, itertools
  • Regular expressions with re
  • Multithreading and multiprocessing
  • Graphical programming with Python

Result

After this course you work confidently with advanced Python features. You write object-oriented code with classes, inheritance, properties and data classes. You apply decorators, generators and context managers, use regular expressions and standard modules effectively, and know when to use multithreading or multiprocessing. Your code is more readable, more reusable and more professional.

Target audience

This follow-up course is intended for developers who can already program in Python and want to deepen their knowledge. Think of software developers, data analysts, scripters and automation specialists who want to work with Python in a more professional and advanced way.

Teaching method

You take the course in a classroom setting in a small group under the guidance of an experienced trainer. Theory and practical assignments alternate continuously, so that you apply what you have learned straight away. You work on your own laptop or on a practice laptop provided by Learnit. Afterwards you receive a Learnit certificate of participation.

Prior knowledge

You have experience with the basics of Python programming, comparable to the Learnit Python Programming course. You work comfortably with variables, functions, lists, dictionaries and simple scripts.

Comments

On completion of the course, a Learnit certificate is issued as proof of attendance.

Language

The training is given in Dutch as standard. The trainer has a good command of English. English-language course material can be used. With a minimum enrolment of 3 participants, the training can also be given entirely in English.

The best training for you

At Learnit you will always find a course that takes you further. From (technical) IT skills to communication or personal leadership. You can also choose the training format that suits you best: a classroom course, a tailor-made course at your own office, an online course or an e-learning. We have the right course and the right format for everyone. Because learning in the way that suits you best delivers the best results.

Participants attending a classroom training course at Learnit

Why choose training at Learnit?

  • Always and everywhere personal

    Personal attention and a pleasant atmosphere. Whether you take a course with us, at your office or on your own PC, we make sure you feel at home enough to push your boundaries.

  • Just do it!

    New opportunities arise when you get moving. Stay sharp. Keep taking new steps. We encourage you to take the plunge and really go for it.

  • Growing through knowledge and inspiration

    Discover something new. Build on your strengths. And choose your own path. We help you grow with training courses and learning formats that genuinely suit you.

  • Skills for the future

    We always think in terms of possibilities and win-win. And every day we work on new solutions for tomorrow. By offering training courses that leave you well prepared for the future.

  • Working together on quality

    We don't make empty promises. What we do offer is quality, knowledge and experience. A broad range of courses, made possible by our inspired staff and trainers.

  • Understanding and being understood

    We listen to what matters to you. To what you need. Because that is where our solution, our tailored approach, begins. Understanding each other properly and communicating clearly: that is what we believe in.

Find out more about Learnit
Trainer and participants working together during a Learnit course

Moving forward together

Taking a training course at Learnit means learning together. Together with your experienced trainer, together with your course group or together with your colleagues. And whether you take the training at home, at your office or at one of our training locations, we are always available to help you. To share our knowledge with you in a way that is genuinely useful to you. Getting further together through personal attention and understanding each other well; that is what we believe in.

Apply it directly in your work

Learning theory from a book that you can then hardly use in your work? Not at Learnit! Whichever training you take with us, you can put it to use at your workplace straight away. Because of the unique learning objectives you set together with the trainer at the start of the training. Because of the alternation between theory and (interactive) practical assignments. And by bringing the challenges you face in your daily work along to the training.

Participants apply what they have learnt straight away in the workplace

Frequently asked questions

You learn advanced Python features such as the Python data model, classes with inheritance, decorators, iterators, generators, context managers and type hinting. You also work with standard modules such as os, sys, datetime, itertools and re, and are introduced to multithreading, multiprocessing and graphical programming.

The course is intended for developers, scripters and data analysts who can already program in Python and want to deepen their knowledge. You want to go beyond the basics and write Python code at a professional level.

You have experience with the basics of Python: variables, functions, lists, dictionaries, control flow and simple scripts. If you have taken the Learnit Python Programming course or have acquired comparable knowledge, this course will suit you well.

You attend three consecutive classroom days in a small group. Theory and practice exercises alternate, so that you apply each concept in code straight away. Day 1 focuses on the data model and object-oriented programming; days 2 and 3 cover modules, decorators, generators and concurrency.

Yes, on successful completion you will receive a Learnit certificate of participation. This shows that you have mastered the advanced parts of Python.

Yes, you can work on your own laptop so that you program in a familiar environment. If you do not have a suitable laptop to hand, Learnit will provide a practice laptop for you.

An iterator is an object that implements the __iter__ and __next__ iterator protocols and returns values one by one. A generator is a straightforward way of writing an iterator using the yield keyword. Generators keep track of their state automatically and are memory-efficient, because they produce values lazily instead of building an entire list in memory.

Multithreading is suitable for I/O-bound tasks such as network traffic or file operations, because threads can pick up other tasks while waiting. You use multiprocessing for CPU-bound tasks, such as heavy calculations. Because of the Global Interpreter Lock (GIL), Python threads do not really run in parallel on multiple cores, whereas processes do.

A decorator is a function that modifies or extends another function or method without changing the original code. You use decorators for logging, caching, authorisation checks, timing and registering functions. Well-known examples are @staticmethod, @classmethod and @property from the standard library.

The Python data model describes how objects behave through special dunder methods such as __init__, __repr__, __len__, __getitem__ and __eq__. By implementing these methods, you integrate your own objects seamlessly with Python syntax such as indexing, comparison, iteration and string representation. This makes your code more idiomatic and more powerful.

Type hinting allows you to explicitly annotate the types of variables, parameters and return values, for example def sum(a: int, b: int) -> int. It is not compulsory and has no effect on execution, but it improves readability, helps tools such as mypy to find errors early and improves support in IDEs with autocomplete and refactoring.

You can find the current price at the top right of this course page, along with the schedule, location and delivery format. For in-company or bespoke courses we are happy to provide a quotation on request.