Курс 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"
- Установка и использование emoji
- Методы split() и join() — Python строк.
- Поиск повторов в списке
- Создание именованных кортежей в Python
- Оператор in и not in в Python
- Магические методы в Python
- Переопределение метода __lshift__
- Модуль future Python
- Отслеживание выполнения программы с библиотекой tqdm
- Удаление файлов с shutil.os.remove()
- Удаление ключей из словаря
- Работа с парами ключ-значение
- Декораторы с аргументами
- Метод __index__ в Python
- Изменение списка срезом
- Работа с исключениями в Python
- Создание словарей в Python
- Роль запятой в Python
- Работа с YAML в Python
- Создание словарей с defaultdict
- Функция map() в Python
- Объединение списков в Python
- Переопределение метода delitem в Python
- Удаление дубликатов из списка с помощью dict.fromkeys
- Оператор continue в Python
- Объединение списков в строку
- Метод Self в Python
- Обработка исключений в Python
- Тест скорости набора текста на Python
- Метод get для словаря
- Оптимизация гиперпараметров с Scikit Optimize
- Библиотека Rich: форматирование текста
- Блок else в Python
- Оператор «not» в Python
- Функция eval() в Python
- Инверсия списка/строки в Python
- Декораторы в Python
- Фильтрация элементов с помощью islice
- Наиболее частотные элементы с помощью Counter
- Сериализация данных в JSON с помощью json.dumps
- Метод rpow в Python
- Обработка ошибок в Python
- Преобразование Excel в PDF с Spire.XLS
- Очистка строки в Python
- Разделение строки с помощью re.split()
- split() — разделение строки
- Numpy: объединение массивов















