Работал ли с метаклассами (metaclass)

Python Middle Без компании
Работал ли с метаклассами (metaclass)
Ответы
Да, работал. Метаклассы в Python — это механизм для управления созданием классов. Они позволяют изменять поведение классов на этапе их создания. **Пример:** ``` class Meta(type): def __new__(cls, name, bases, dct): # Добавляем атрибут к классу dct['version'] = 1.0 return super().__new__(cls, name, bases, dct) class MyClass(metaclass=Meta): pass print(MyClass.version) # Выведет: 1.0 ``` **Где применяются:** - Валидация или модификация атрибутов класса. - Регистрация классов (например, в ORM, как в Django). - Ограничение наследования. Метаклассы сложны и не всегда нужны — часто можно обойтись декораторами классов или `__init_subclass__`.