Курс 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"
- Упрощенный вывод данных в Python
- Сортировка с параметром key
- Особенности запятых в Python
- Логирование в Python
- Python Enum Weekday Usage
- Counter() — подсчет элементов
- Метод count в Python: почему count(», ») возвращает 4?
- Создание итератора
- Обработка исключений с блоком else
- Определение функций с необязательными аргументами
- Создание новых списков в Python
- Настройка логгера Logzero
- Игра «Виселица» на Python
- Удаление дубликатов из списка с помощью dict.fromkeys
- EMOT преобразование эмодзи в текст
- Функция reduce() из модуля functools
- Сериализация и десериализация объектов
- Импорт модулей в Python 3.12
- Функции в Python
- Сравнение def и lambda в Python
- Работа с множествами в Python
- Непрерывная проверка в Python
- Манипуляция формой массива в Numpy
- Метод join() с набором
- Функция pow() — возвести число в степень
- Гибкие функции Python
- Экранирование символов в Python
- Проверка дубликатов в Python
- Работа с контекстными менеджерами
- Различия символов в Python
- Аннотации типов в Python
- Enum в Python
- Namedtuple в Python
- Обработка исключений в Python
- Проверка класса объекта
- Изучение объектов с помощью dir()
- Функция reversed() в Python
- Создание .exe файла с pyinstaller
- Настройка нарезки списков
- Цикл for с enumerate() в Python
- Импорт модуля из другого каталога
- Форматирование строк в Python
- Псевдонимы в Python
- Использование html-скриптов в Jupyter Notebook















