182. Metaclasses
class MyMeta(type):
def __new__(cls, name, bases, dct):
print(f"Creating class {name}")
return super().__new__(cls, name, bases, dct)
class MyClass(metaclass=MyMeta):
pass
# Output: Creating class MyClassclass AttributeAddingMeta(type):
def __new__(cls, name, bases, dct):
dct['custom_attribute'] = "Hello from metaclass"
return super().__new__(cls, name, bases, dct)
class MyClass(metaclass=AttributeAddingMeta):
pass
print(MyClass.custom_attribute) # Output: Hello from metaclassLast updated