Что такое Декоратор в Python?
В Python декораторы представляют собой мощный механизм для изменения поведения функций или методов, не изменяя их исходный код. Декораторы часто используются для добавления функциональности к существующим функциям, логирования, проверок прав доступа или преобразования результатов.
Пример использования:
def uppercase_decorator(func):
def wrapper(*args, **kwargs):
result = func(*args, **kwargs)
return result.upper()
return wrapper
@uppercase_decorator
def greet(name):
return "Hello, " + name
# Вызов функции после применения декоратора
greeting = greet("Alice")
print("Приветствие:", greeting)
# Вывод: Приветствие: HELLO, ALICEВ данном примере создается декоратор uppercase_decorator, который преобразует результат вызываемой функции в верхний регистр. Затем этот декоратор применяется к функции greet. При вызове greet("Alice") результат преобразуется в верхний регистр, и выводится на экран.
Декораторы позволяют лаконично изменять функциональность кода, делая его более чистым и поддерживаемым. В Python существует множество встроенных декораторов, а также возможность создавать собственные для удовлетворения конкретных потребностей в проекте.