Курс Python → Декораторы в Python
Декораторы в Python — это мощный инструмент, который позволяет изменить поведение функции, не изменяя ее исходный код. Они представляют собой функции, которые принимают другую функцию в качестве аргумента и возвращают новую функцию. При вызове функции, к которой применен декоратор, сначала выполняется код декоратора, а затем уже сама функция.
Пример использования декоратора можно увидеть в следующем коде:
def print_argument(func):
def wrapper(*args, **kwargs):
print(f"Аргументы функции: {args}")
result = func(*args, **kwargs)
return result
return wrapper
@print_argument
def greet(name):
return f"Привет, {name}!"
print(greet("Мир"))
В данном примере мы создаем декоратор print_argument, который выводит аргументы функции перед ее выполнением. Затем мы применяем этот декоратор к функции greet, которая принимает имя и возвращает приветствие. При вызове greet(«Мир») сначала будет выведено «Аргументы функции: (‘Мир’,)», а затем «Привет, Мир!».
Декораторы можно применять к любому количеству функций, обеспечивая повторное использование одного и того же кода для различных функций. Они широко используются во многих популярных библиотеках и фреймворках Python для добавления дополнительной функциональности без изменения исходного кода функций.
Использование декораторов позволяет сделать код более читаемым, модульным и эффективным. Они предоставляют простой способ добавления дополнительной логики к функциям, не засоряя их основной код. Поэтому освоение работы с декораторами является важным навыком для любого разработчика Python.
Другие уроки курса "Python"
- Работа с JSON данными в Python
- Работа с модулем cmath
- Закрытие файла в Python
- Область видимости переменных
- Очистка данных с Pandas
- Класс UserDict: дополнительная функциональность
- Выключение компьютера с помощью Python
- Ветвление выражения в Python
- Переменные класса и экземпляра
- Нахождение самого длинного слова в списке с помощью max
- Создание директории в Python
- Управление пакетами с pip
- Округление дробей в Python
- Сложные типы данных в Python
- Создание новых списков через list comprehensions
- Оптимизация памяти в Python
- Руководство по использованию Colorama
- 9 уловок для чистого кода
- Управление User-Agent в Python
- Переворот списка в Python
- Модуль future Python
- TypedDict для kwargs в Python 3.12
- Функции в Python: создание и вызов
- Разделение строки с регулярными выражениями
- discard() — удаление элемента из множества
- Слияние словарей в Python 3.9
- Преобразование в float
- Итераторы в Python
- Перемешивание списка с shuffle()
- Форматирование строк с f-строками
- Создание списков в Python
- Функция zip() в Python
- Управление браузером с Selenium
- Установка random seed в Python
- Использование defaultdict в Python
- Основы работы со списками
- Каналы Senior: Python, Java, Frontend, SQL, C++
- Создание генераторов в Python
- Руководство по библиотеке pydantic
- Преобразование числа в восьмеричную строку















