Курс 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"
- Добавление элемента к кортежу
- Возврат нескольких значений
- Основные методы NumPy
- Применение промокода в Много лосося
- Python: отсутствие точек с запятыми
- Создание namedtuple списком полей
- Удаление ключей из словаря
- Область видимости переменных в Python
- Принципы Zen of Python
- Ограничение ресурсов в Python
- Генераторы в Python
- Аннотации типов в Python
- Распаковка значений в Python
- Оператор Walrus: правильное использование
- Перемещение и удаление файлов в Python
- Копирование объектов в Python
- Декораторы в Python
- Управление мышью и клавиатурой с Pyautogui
- Функция zip() в Python
- Измерение времени выполнения кода
- Округление в Python
- F-строки в Python
- Удаление дубликатов с помощью множеств
- Удаление элементов из списка в Python.
- Автоматизация скриптов на AWS Lightsail.
- Преобразование кортежа в словарь.
- Отрицательные индексы списков в Python
- Запрос пароля с помощью getpass
- Многострочные комментарии в Python
- capitalize() — изменение регистра первого символа строки
- Разделение строки с регулярными выражениями
- Метод radd для пользовательских чисел
- Метод split() в Python
- Создание списков в Python
- Python: динамическая типизация и проверка типов
- Разделение строки в Python
- Команда %dhist — список посещенных каталогов
- Генераторы в Python
- Проверка списка: any() и all()
- Переворот строки с помощью срезов
- Генераторы в Python
- Переворот последовательности















