Курс Python → Декораторы в Python
Декораторы в Python — это специальные функции, которые могут изменить поведение другой функции или класса без изменения их собственного кода. Они позволяют добавлять дополнительную функциональность к существующему коду, не изменяя его исходную реализацию. Декораторы могут использоваться, например, для логирования, кэширования, проверки аргументов или управления доступом к функциям.
Для создания декоратора в Python используется символ @, за которым следует имя функции-декоратора. Функция-декоратор принимает другую функцию в качестве аргумента и возвращает новую функцию или класс. Это позволяет применять декоратор к другим функциям, чтобы изменить или расширить их поведение.
def square_decorator(func):
def wrapper(*args, **kwargs):
result = func(*args, **kwargs)
return result ** 2
return wrapper
@square_decorator
def square(x):
return x
В приведенном примере функция square_decorator() является декоратором, который принимает функцию в качестве аргумента и возвращает новую функцию, которая возводит результат выполнения исходной функции в квадрат. После применения декоратора @square_decorator к функции square(), результат ее выполнения будет возводиться в квадрат.
Использование декораторов позволяет сделать код более модульным, читаемым и гибким. Они позволяют разделить различные аспекты функциональности программы и применять их по отдельности к различным частям кода. Благодаря декораторам можно эффективно использовать и переиспользовать код, делая его более универсальным и поддерживаемым.
Другие уроки курса "Python"
- Оператор match в Python
- Транспонирование матрицы в Python
- Склеивание строк без циклов
- Переопределение метода __rshift__
- Работа с Requests для HTTP-запросов
- Многострочные комментарии в Python
- Обход дочерних элементов BeautifulSoup
- Подсчет элементов в Python
- Блок try…finally в Python
- Отладка в командной строке
- Создание словаря через dict comprehension
- Установка и использование модуля Wikipedia
- Получение локальных переменных в Python
- Установка Python — Простое руководство
- Секреты Python
- Python: Фильтрация списков с помощью filter()
- Работа с парами ключ-значение
- Декораторы в Python
- Динамическая типизация в Python
- Комплексные числа в Python
- Создание множества в Python
- Сравнение строк в Python
- Многострочные комментарии в Python
- Работа с *args и **kwargs в Python
- Поток данных в Python
- Подсчет количества элементов в списке
- Подсказки типов в Python
- Класс Counter() для подсчета элементов
- Создание и удаление объектов
- Контекстный менеджер в Python
- Основные методы NumPy
- Работа с OpenCV
- Обработка ошибок в JSON данных
- Работа с библиотекой requests
- Создание тестовых данных с Faker
- Оператор in и not in в Python
- Комментарии в Python
- Подсчет частоты элементов с Counter
- Оператор in в Python
- Метод Self в Python
- Сравнение объектов в Python
- Переопределение метода xor в Python
- Атрибуты массивов в Numpy
- Concrete Paths — метод .with_suffix()
- Преобразование списка в словарь через генератор
- Множественное наследование в Python















