Core Python 3: Custom Attributes and Descriptors
Python has a dynamism which can give our objects superpowers. This course will teach you how to implement highly flexible interfaces with where the attributes of objects are determined on-the-fly, rather than being determined in advance by classes.
What you'll learn
When classes are too rigid, but dictionaries too flexible, you can often find a good trade-off with dynamic objects. In this course, Core Python 3: Custom Attributes and Descriptors, you’ll learn to make objects with highly dynamic interfaces. First, you’ll explore how objects are internally represented in Python. Next, you’ll discover how to customize object attribute access. Finally, you’ll learn how to define your own descriptors, which form the basis of much of how Python attributes work. When you’re finished with this course, you’ll have the skills and knowledge of Python object customization needed to produce flexible and expressive code.
Table of contents
- Version Check 0m
- How are Python Objects Represented? 6m
- Dynamic Attribute Initialization 5m
- Custom Attribute Read Access 3m
- Preventing Attribute Write Access 1m
- Preventing Unwanted Recursion 3m
- Preventing Attribute Deletion 2m
- Customizing Attribute Storage 5m
- Using vars() to Access __dict__ 1m
- Intercepting All Attribute Access 5m
- Customizing Attribute Writes 5m
- Built-in Protocols Bypass Attribute Lookup 3m