Wednesday 9 a.m.–12:20 p.m.

Descriptors and Metaclasses - Understanding and Using Python's More Advanced Features

Mike Müller

Audience level:
Python Core (language, stdlib, etc.)


Descriptors and metaclasses are advanced Python features. While it is possible to write Python programs without active of knowledge of them, knowing how they work provides a deeper understanding about the language. Using examples, you will learn how they work and when to use as well as when better not to use them. Use cases provide working code that can serve as a base for own solutions.


This tutorial is a systematic introduction to descriptors and metaclasses. It covers all relevant information with a focus on practical applications for common tasks. It is a part of the advanced training I've been delivering over the last years in open and in-house courses as well as trainings at EuroPython, PyCon PL, PyCon DE and PyCon IE. The material has been continuously refined owing to the participant feedback.

Student Handout

No handouts have been provided yet for this tutorial