Курс Python → Декораторы в Python
Декораторы в Python — это мощный инструмент, который позволяет изменять поведение функций или методов без изменения их собственного кода. Прежде всего, декораторы позволяют нам повторно использовать код, делая его более читаемым и модульным. При этом они позволяют добавлять функциональность к существующим функциям, не изменяя их исходный код.
Для создания декоратора в 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"
- Работа с collections в Python.
- Удаление элементов из списка
- Solidity для DeFi Ethereum
- Умножение строк и списков
- Форматирование строк с f-строками
- Определение объема памяти объекта
- Операции с массивами в NumPy
- Метод bool() в Python
- Изменяемые и неизменяемые объекты
- Показ всплывающих окон Tkinter
- Docstring в Python
- Вставка переменных в шаблоны Flask
- Метод eq для сравнения объектов
- Перевернуть список в Python
- Лямбда-функции в Python
- Отступы в Python
- Основные операции с библиотекой Numpy
- Конструктор в Python
- Методы HTTP запросов в Flask
- Управление асинхронными задачами с помощью Semaphore
- Переворот строки с помощью срезов
- Аргументы *args и **kwargs
- Возвращение нескольких значений
- Оператор continue в Python
- Использование метода lower()
- Структуры данных в Python
- Проверка подстроки в строке с помощью in
- ROT13 Шифр Цезаря в Python
- Блок try-except-else
- Область видимости переменных
- Сортировка в Python
- Работа с URL-адресами в Python
- Методы и функции в Python
- Структурирование именованных констант
- Метод add для класса Vector
- Обновление ключей в Python
- Безопасный доступ к значениям словаря
- Установка User-Agent в Python
- Извлечение чисел из текста
- Класс UserDict: дополнительная функциональность
- Метод gt в Python
- Создание коллекций из выражения-генератора
- Многоточие в Python
- Метод matmul для умножения матриц
- Эффективная конкатенация строк с использованием join()
- Условное добавление элементов в список
- Экранирование символов в Python
- Печать в одной строке
- Проверка элементов списка условием















