Сообщить об ошибке.

Краткий обзор раздела: Создание и использование декораторов в Python

Содержание с кратким описанием:

ОБЗОР: Создание и использование декораторов в Python.
По определению, декоратор - это функция, которая принимает другую функцию и расширяет поведение последней, не изменяя ее явно. На самом деле это не так. Декораторы предоставляют простой синтаксис для вызова функций высшего порядка.
Захват аргументов функцией декоратором в Python.
Нужно использовать *args и **kwargs в функции обертке wrapper() декоратора, а так же передавать произвольное число позиционных и ключевых аргументов функции func, которую декоратор получает в качестве аргумента.
Возврат значений из декорируемой функции в Python.
Чтобы декоратор возвращал задекорированное значение функции нужно, чтобы функция-обертка возвращала задекорированное значение функции.
Атрибут __name__ декорируемой функции в Python.
Декораторы должны использовать `@functools.wraps` декоратор, который сохранит информацию о декорируемой функции.
Шаблон декоратора общего назначения в Python.
На основе представленного шаблона можно строить декораторы общего назначения.
Декораторы с аргументами в Python.
Чтобы получить декоратор в который можно передать аргументы, нужно из функции с параметрами вернуть функциональный объект, который может действовать как декоратор.
Вложенные декораторы в Python.
В Python можно применить несколько декораторов к функции, укладывая их друг на друга. Каждый декоратор обрабатывает результат, возвращаемый предыдущим декоратором. Последний декоратор в списке будет задействован первым.
Кэширование значений в декораторах Python.
Декораторы могут обеспечить хороший механизм для кэширования и запоминания.
Класс как декоратор функции Python.
Использование класса в качестве декоратора.
Декораторы методов класса в Python.
Одна из отличительных особенностей Python заключается в том, что методы и функции на самом деле одинаковы. Это означает, что можно построить декоратор для методов класса на основе шаблона декоратора общего назначения.
Декораторы классов в Python.
Декораторы классов, как и декораторы функций, являются мощной функцией в Python. Однако вместо изменения функций декораторы классов применяются к классам. Их можно использовать для изменения поведения класса, добавления новых методов или новых свойств.
Практические примеры применения декоратора Python.
В материале представлены несколько полезных декораторов, часто используемые пользователями.