SobesLab логотип SobesLab

Ответ

Да, класс тоже можно декорировать – синтаксис @decorator перед определением class. Декоратор класса – это функция, принимающая готовый класс и возвращающая либо модифицированный класс, либо совершенно другой объект вместо класса. Это используется, например, в ORM-фреймворках, где декоратор регистрирует класс как модель, или для автоматически добавления методов/атрибутов. Простейший пример: @dataclass – стандартный декоратор, который добавляет в класс генерируемые __init__, __repr__ и др. Таким образом, декорирование класса позволяет менять или дополнять его определение автоматически.