Авторизация
Забыли пароль? Введите ваш е-мейл адрес. Вы получите письмо на почту со ссылкой для восстановления пароля.
После регистрации вы сможете задавать вопросы и писать свои ответы, получая за это бонусы. Все остальные функции на сайте доступны без регистрации.
Вы должны войти или зарегистрироваться, чтобы добавить ответ и получить бонусы.
Декоратор в Python — это специальная функция, которая позволяет изменять поведение другой функции без изменения ее исходного кода. Декораторы позволяют добавлять дополнительную функциональность к функциям, классам или методам, не изменяя их структуру.
Декораторы используются для решения различных задач, таких как логирование, проверка аутентификации, кэширование результатов и других аспектов, которые могут быть применимы к различным функциям или методам.
Синтаксис декоратора выглядит следующим образом:
«`python
@decorator
def function():
pass
«`
где `decorator` — это функция-декоратор, которая будет применена к функции `function`. Декоратор может быть определен как отдельная функция или класс, который принимает функцию в качестве аргумента и возвращает новую функцию, которая заменяет исходную.
Пример использования декоратора:
«`python
def uppercase_decorator(func):
def wrapper():
result = func()
return result.upper()
return wrapper
@uppercase_decorator
def say_hello():
return «hello»
print(say_hello()) # Вывод: «HELLO»
«`
В этом примере `uppercase_decorator` — это декоратор, который преобразует результат функции `say_hello` в верхний регистр. При вызове `say_hello()` будет вызвана функция `wrapper`, которая возвращает результат функции `say_hello` в верхнем регистре.