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

Можно ли задекорировать класс

Да, можно. Декоратор класса в Python — это функция, которая принимает класс, изменяет его и возвращает изменённую версию. Это полезно для добавления функциональности, проверок или модификации поведения класса.

Пример:

python
def add_method(cls):
    def hello(self):
        return "Hello, I'm a new method!"
    cls.hello = hello
    return cls

@add_method
class MyClass:
    pass

obj = MyClass()
print(obj.hello())  # Выведет: Hello, I'm a new method!

Нюансы:

  1. Декоратор применяется после создания класса, но до создания экземпляров.
  2. Можно изменять атрибуты, методы или добавлять новые.
  3. Если нужно сохранить оригинальный класс, используйте functools.wraps (для функций внутри класса) или создавайте копию.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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