Декораторы — это функции в Python, которые принимают другую функцию в качестве аргумента и возвращают новую функцию с добавленным поведением. Это удобный способ модификации или расширения функциональности без изменения исходного кода функции.
➡️ Пример:
# Декоратор для логирования вызовов функции
def log_call(func):
def wrapper(*args, **kwargs):
print(f"Вызов функции {func.__name__} с аргументами: {args}, {kwargs}")
result = func(*args, **kwargs)
print(f"Результат: {result}")
return result
return wrapper
# Применение декоратора
@log_call
def add(a, b):
return a + b
add(3, 5)
🗣️ В этом примере декоратор log_call добавляет логирование вызовов и результатов функции add. Декораторы позволяют делать код более модульным и удобным для повторного использования.
🖥 Подробнее тут