Advanced

Metaclasses in Python

Metaclasses allow you to control class creation itself. They are often described as "classes of classes".

Why Metaclasses?

Basic Example

class MyMeta(type):
    def __new__(cls, name, bases, attrs):
        attrs["created_by"] = "metaclass"
        return super().__new__(cls, name, bases, attrs)

class Demo(metaclass=MyMeta):
    pass

print(Demo.created_by)
📝 Use metaclasses sparingly — they add complexity.