Курс Python → Декораторы в Python
Декораторы в Python — это мощный инструмент, который позволяет изменять поведение функций или методов без изменения их собственного кода. Прежде всего, декораторы позволяют нам повторно использовать код, делая его более читаемым и модульным. При этом они позволяют добавлять функциональность к существующим функциям, не изменяя их исходный код.
Для создания декоратора в Python используется символ @, за которым следует имя декоратора. Декоратор — это функция, которая принимает другую функцию в качестве аргумента и возвращает новую функцию. Эта новая функция обычно содержит дополнительный код, который выполняется до или после вызова исходной функции.
def my_decorator(func):
def wrapper():
print("Дополнительный код перед вызовом функции")
func()
print("Дополнительный код после вызова функции")
return wrapper
@my_decorator
def say_hello():
print("Привет, мир!")
В приведенном выше примере функция say_hello() декорируется функцией my_decorator(). При вызове функции say_hello() будет сначала выполнен дополнительный код из декоратора, затем сама функция say_hello() и, наконец, еще один блок кода из декоратора. Таким образом, мы можем легко изменять и расширять функциональность наших функций.
Использование декораторов в Python позволяет сделать код более гибким и удобным для поддержки. Они позволяют разделить логику программы на отдельные блоки, что упрощает чтение и понимание кода. Благодаря декораторам мы можем добавлять новые функции и возможности без необходимости изменения исходного кода, что делает нашу программу более масштабируемой и гибкой.
Другие уроки курса "Python"
- Поиск элементов BeautifulSoup
- Разрешение имен в Python
- Преобразование в float
- Проверка запуска скрипта или импорта модуля
- Импорт с альтернативным именем
- Установка random seed в Python
- Сортировка в Python
- Разделение строк в Python
- Список импортированных модулей в Python
- Названия переменных
- Многострочные строки в Python
- Комплексные числа в Python
- Генерация случайных данных в NumPy
- Путь к интерпретатору Python
- Проверка существования переменной с оператором :=
- Обработка элементов в Python
- Группировка элементов Python
- Работа с прокси в Python
- Роль ключевого слова self
- Многопроцессорное программирование в Python
- Ошибка NotImplemented в Python
- Логические значения в Python
- Логирование с Loguru
- Функция reduce() из модуля functools
- Руководство по использованию Colorama
- Инверсия списка и строки в Python
- Работа с CSV файлами в Python
- Виртуальные среды в Python
- Объединение итераторов
- Тип CodeType в Python.
- Метод enumerate() в Python
- Создание списков в Python
- Модуль functools в Python
- Сравнение неупорядоченных списков
- Работа со словарями с defaultdict из collections
- Описание скриптов в README
- Работа с файлами в Python
- Проекты на Python
- Извлечение аудио из видео
- Подсчет элементов с помощью Counter из collections
- Копирование объектов в Python
- Комментарии в Python.
- Измерение времени выполнения кода
- Пустой оператор pass в Python
- Создание генераторов в Python
- Счетчик ссылок в Python















