Встречается на собеседованиях • сегодня

Приходилось ли писать свои метаклассы

Да, приходилось. Метаклассы в Python позволяют контролировать создание классов. Они полезны для автоматической регистрации классов, добавления методов/атрибутов, валидации или изменения поведения классов.

Пример простого метакласса, который добавляет атрибут created_by_meta всем классам:

python
class MyMeta(type):
    def __new__(cls, name, bases, namespace):
        namespace['created_by_meta'] = True
        return super().__new__(cls, name, bases, namespace)

class MyClass(metaclass=MyMeta):
    pass

print(MyClass.created_by_meta)  # True

Метаклассы стоит использовать осторожно — они усложняют код. Часто ту же задачу можно решить через декораторы классов или __init_subclass__.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы