Middle
43
questionbank

Как реализовать декоратор с аргументами?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

Для создания декоратора с аргументами нужно использовать дополнительную обертку. Внешняя функция будет принимать аргументы декоратора, средняя — саму декорируемую функцию, а внутренняя — аргументы декорируемой функции.

python

При вызове @decorator_with_args("привет", 123) сначала выполняется decorator_with_args("привет", 123). Эта функция возвращает actual_decorator. Затем @ применяет actual_decorator к my_function. В итоге, my_function заменяется функцией wrapper.