Что такое декораторы в Python

Python Senior Без компании
Что такое декораторы в Python
Ответы
Декораторы в Python — это функции, которые позволяют модифицировать поведение других функций или методов без изменения их исходного кода. Они принимают функцию в качестве аргумента и возвращают новую функцию, обычно добавляя дополнительную логику до или после вызова исходной. Пример простого декоратора: ``` def my_decorator(func): def wrapper(): print("Действие до функции") func() print("Действие после функции") return wrapper @my_decorator def say_hello(): print("Привет!") say_hello() ``` Вывод: ``` Действие до функции Привет! Действие после функции ``` Ключевые особенности: - Используют синтаксис `@decorator_name` - Могут принимать аргументы (через вложенные функции) - Сохраняют метаданные оригинальной функции (используя `functools.wraps`) - Часто применяются для логирования, проверки прав доступа, кэширования