Декоратор — вызываемый объект, который принимает функцию или класс и возвращает замену. Запись @decorator над функцией эквивалентна присваиванию func = decorator(func).
[имя] спросил: Что такое декоратор в Python?
Декоратор — вызываемый объект, который принимает функцию или класс и возвращает замену. Запись @decorator над функцией эквивалентна присваиванию func = decorator(func).
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Декоратор — вызываемый объект, который принимает функцию или класс и возвращает замену. Запись @decorator над функцией эквивалентна присваиванию func = decorator(func).
Часто заменой служит обёртка с дополнительной логикой: измерением времени, проверкой доступа или кешированием. Для функций используйте functools.wraps, сохраняйте результат и исключения. Декоратор с параметрами добавляет внешний уровень, возвращающий сам декоратор. Асинхронной функции нужна совместимая обёртка, которая корректно ожидает результат.