Курс Python → Декораторы в Python
Декораторы в Python — это мощный инструмент, который позволяет модифицировать поведение функций без изменения их кода. Они представляют собой функции, которые принимают другую функцию в качестве аргумента и возвращают новую функцию. Это позволяет добавлять дополнительный код до и после выполнения целевой функции, а также изменять ее параметры и возвращаемое значение.
Для создания декоратора в Python необходимо определить функцию, которая принимает целевую функцию в качестве аргумента. Внутри этой функции можно определить любую логику, которая будет выполняться до и после вызова целевой функции. Затем необходимо вернуть новую функцию, которая будет заменять исходную функцию при применении декоратора.
def my_decorator(func):
def wrapper():
print("Дополнительный код до выполнения функции")
func()
print("Дополнительный код после выполнения функции")
return wrapper
@my_decorator
def my_function():
print("Основной код функции")
В данном примере мы создаем декоратор my_decorator, который выводит сообщения до и после выполнения функции my_function. При применении декоратора с помощью синтаксиса @my_decorator, вызов функции my_function будет автоматически заменен на вызов функции my_decorator(my_function), изменяя ее поведение.
Использование декораторов позволяет улучшить читаемость и поддерживаемость кода, разделяя логику функций от дополнительной функциональности. Они также позволяют повторно использовать код и упрощают внесение изменений в функциональность программы.
Другие уроки курса "Python"
- Делегирование в Python
- Настройка нарезки списков
- Вывод символов строки в Python
- Определение основы слова с showballstemmer
- Поиск индекса элемента в списке
- Добавление Progressbar в Python
- Colorama: окрашивание текста в Python
- Новшества Flask 2.0
- Искажение имен в Python
- Проверка кортежей.
- Декоратор Property в Python
- Python: изменяемые и неизменяемые коллекции
- f-строки в формате строк
- Python и Монти Пайтон
- Аннотации типов в Python
- Виртуальное окружение Python
- Декораторы в Python
- Работа с SQLite в Python
- Тип CodeType в Python.
- Переопределение метода divmod
- Манипуляция формой массива в Numpy
- Операторы Splat и splatty-splat
- Сортировка элементов в Python
- Работа с JSON данными в Python
- Декораторы в Python
- Поиск файлов по шаблону
- Работа со слайсами
- Magic Commands — улучшение работы с Python
- Цепные операции в Python
- Метод splitlines() для разделения строк
- Идентификатор объекта в Python
- Итерация по коллекции в Python
- Работа с контекстным менеджером Pool
- Работа с пользовательским вводом
- Подчеркивание в REPL
- Метод join() для объединения элементов строки
- Генерация UUID в Python
- Удаление файлов и папок в Python
- Объявление переменных в Python
- Сортировка в Python
- Установка и использование Python-dateutil
- Объединение словарей в Python
- Атрибуты массивов в Numpy
- Инициализация структур данных















