Курс 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"
- Парсинг веб-страниц с Beautiful Soup
- Логический оператор «and» в Python
- Наследование в программировании
- Numpy: разбиение массивов
- Обход словаря в Python
- Создание Radio кнопок в tkinter
- Делегирование в Python
- Функция pow() — возвести число в степень
- Создание GUI на Tkinter
- Преобразование многоуровневого словаря
- Поиск наиболее частого элемента списке
- Перевернуть список в Python
- Метод join() для объединения элементов строки
- Строки в Python: апострофы и кавычки
- Сравнение def и lambda функций в Python
- Проверка типа объекта в Python
- Анализ текста на русском языке с помощью Pymystem3
- Работа с модулем glob в Python
- Применение команды break
- Изменяемые и неизменяемые объекты
- Проверка ввода с помощью isdigit
- Циклы в Python
- Метод setdefault() в Python
- Работа со словарями с defaultdict из collections
- Python Метод Union Множеств
- Тип данных TypeVarTuple
- Раздувающийся словарь в Python
- Функциональное программирование в Python
- Метод enumerate() в Python
- Избегание изменяемых аргументов
- Ускорение кода с помощью векторизации
- Назначение максимального и минимального значения переменной в Python.
- Частичное совпадение ввода
- Создание списка дат
- Особенности ключей словаря в Python
- Комментарии в Python
- Поиск индекса элемента
- Получение текущей директории
- Метод join() с набором
- Проверка класса объекта
- Сумма элементов списка
- Исключение NotImplementedError
- Создание комплексных чисел
- Преобразование символов в нижний регистр
- Условные выражения в Python















