Курс Python → Декораторы в Python
Декораторы в Python — это мощный инструмент, который позволяет разработчику улучшить функциональность существующих объектов, не изменяя их исходного кода. Идея декораторов заключается в том, что они представляют собой функции, которые принимают другую функцию в качестве аргумента и возвращают новую функцию. Таким образом, декораторы позволяют нам добавлять новую логику к существующим функциям, не изменяя их саму реализацию.
Для определения собственных декораторов в Python мы можем использовать синтаксис @decorator_func, где decorator_func — это функция-декоратор. Мы также можем использовать встроенные декораторы, которые предоставляются языком Python, такие как @staticmethod для создания статических методов в классах. Статические методы не привязаны к экземпляру или классу, а просто логически принадлежат к классу.
Пример использования декораторов в 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"
- Функции в одну строку
- Вывод с переменной через запятую
- Метод get для словаря
- Функции с дополнением
- Работа с Telegram API на Python
- Python 3.12: Псевдонимы типов
- Python-dateutil — работа с датами
- Метод getitem для доступа к элементам последовательности
- Функция zip() в Python
- Удаление и повторная вставка ключа в OrderedDict
- Декоратор Property в Python
- Работа с множествами в Python
- Область видимости переменных
- Операторы += в Python
- Обновление шаблона base.html
- Подсчет элементов с помощью Counter из collections
- Python: цикл for и оператор присваивания
- Особенности множеств в Python
- Применение промокода в Много лосося
- Аннотации типов в Python
- Условное добавление элементов в список
- Замена элементов в списке с помощью генераторов списков
- Операторы объединения в Python 3.9
- Возврат нескольких значений из функции
- Фильтрация элементов с помощью islice
- Создание циклической ссылки
- Резервирование символов в Python
- Преобразование букв в нижний регистр
- Лямбда-функции в Python
- Строковое представление объектов
- Парсинг веб-страниц с Beautiful Soup
- Синхронизация потоков с time.sleep()
- Извлечение статей с newspaper3k
- Управление доступом к модулю
- Итерация по коллекции в Python
- Импорт с альтернативным именем
- Транспонирование 2D-массива с помощью zip
- Метод join() с набором
- Преобразование списка в словарь через генератор
- UserList в Python: Описание и примеры использования
- Сериализация и десериализация объектов
- Декораторы в Python
- Декораторы с аргументами в Python
- Сортировка и обратный порядок
- Форматирование строк с % в Python















