Встречается на собеседованиях • сегодня
Почему аргумент decorator не подчищается
Декоратор в Python не подчищается (не вызывается автоматически), потому что он применяется только один раз — во время декорирования функции. После этого декоратор возвращает обёрнутую функцию, которая заменяет оригинальную. Последующие вызовы работают уже с этой обёрткой, а не с самим декоратором.
Пример:
python
def my_decorator(func):
print("Декоратор вызван")
def wrapper():
print("До вызова функции")
func()
print("После вызова функции")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
# При запуске кода сразу выведет "Декоратор вызван"
# Далее при вызове say_hello() будет работать wrapper
say_hello()Вывод:
text
Декоратор вызван
До вызова функции
Hello!
После вызова функции
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы