Курс 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"
- Удаление элемента из списка в Python
- Управление мышью и клавиатурой с Pyautogui
- Docstring в Python
- Метаклассы в Python
- Операции с комплексными числами
- Возврат нескольких значений
- Numpy: использование Ellipsis
- Преобразование текста в речь с Python
- Измерение времени выполнения кода
- Реверс строки и списка в Python.
- Конвертация коллекций в Python.
- Создание словаря через dict comprehension
- Руководство по Pymorphy2
- Декораторы в Python
- Работа с модулем os в Python
- Декораторы в Python
- Метод join() для объединения элементов строки
- Использование функции enumerate()
- Переворот строки
- Избегание циклических зависимостей классов в Python
- Объединение списков в Python.
- Обработка исключений в Python
- Создание GUI на Tkinter
- Отправка HTTP-запросов в Python
- Добавление кнопки в tkinter
- Нахождение разницы между списками в Python
- Оператор in в Python
- Метод eq для сравнения объектов
- Преобразование Excel в PDF с Spire.XLS
- Метод __int__ в Python
- TON Smart Challenge #2: участие и подготовка
- Создание именованных кортежей в Python
- Замыкания в Python
- Создание обратного итератора
- Подсчет частотности элементов в Python
- Протокол управления контекстом
- Основы работы со строками в Python
- Метод __complex__ в Python
- Создание инструмента обнаружения плагиата
- Принципы LSP и ISP в Python
- Функции map, filter, reduce
- Шаблоны и наследование в Flask
- Bootle — простой веб-фреймворк















