Python Metaprogramming & the Data Model

Parent: Programming Languages · researched 2026-06-02T18:07:28.530Z· 5 sources · 8 concepts · skill python-metaprogramming

Children

Frontier under this node: Class-creation pipeline (namespace → __set_name__ → __init_subclass__ → metaclass), Data model / dunder protocols (__getattr__/__getattribute__/__call__, __slots__), Descriptors (__get__/__set__/__delete__, data vs non-data precedence, __set_name__), Discipline — restraint hierarchy, tool-followability, Metaclasses (type, __new__/__init__/__call__/__prepare__, conflicts, when to use), Protocols (structural typing, runtime_checkable) vs ABCs (nominal, abstractmethod, __subclasshook__), Runtime introspection (inspect, typing.get_type_hints, annotationlib/PEP 649), __init_subclass__ (lightweight metaclass alternative, subclass kwargs, registries)

← the whole tree · 3D view· how to read this page