Курс Python → Декораторы с аргументами в Python
Декораторы в Python — это специальные функции, которые позволяют модифицировать поведение других функций или методов. Они позволяют добавлять дополнительную логику к функциям без изменения их кода. Декораторы могут быть использованы для различных задач, таких как логирование, кэширование, аутентификация и многое другое.
Однако, в некоторых случаях декораторам могут потребоваться аргументы. Например, когда требуется передать в декоратор какие-то данные или параметры для его работы. Это особенно удобно, когда нужно настроить поведение декоратора в зависимости от конкретной ситуации.
Рассмотрим пример с использованием декоратора app.route из веб-фреймворка Flask. Этот декоратор используется для создания маршрутов веб-приложения. Он может принимать аргументы, такие как URL-адрес маршрута и методы HTTP-запросов, которые должны обрабатываться этим маршрутом.
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'Привет, мир!'
if __name__ == '__main__':
app.run()
В этом примере мы создаем маршрут ‘/’ с помощью декоратора app.route. Мы передаем ему URL-адрес ‘/’ в качестве аргумента, чтобы указать, что данный маршрут должен обрабатывать запросы к корневому URL-адресу. Затем мы определяем функцию index, которая будет вызываться при обращении к этому маршруту и возвращает строку ‘Привет, мир!’. При запуске приложения Flask этот маршрут будет доступен по адресу http://localhost:5000/.
Другие уроки курса "Python"
- Фильтрация списков с itertools
- Методы split() и join() — Python строк.
- Добавление элементов в список
- Обрезка изображения с Pillow
- Поиск наиболее частого элемента в списке
- Форматирование строк с помощью f-строк
- Комментарии в Python
- Добавление элемента в список.
- Создание матрицы в Python
- Оператор обр. импликации
- Красивый вывод списка
- Математические функции в Python
- Атрибуты класса и экземпляра
- Оптимизация памяти с __slots__
- Изменение логики работы с временем
- Разделение строк в Python
- Запрос DELETE с библиотекой requests
- Генераторы в Python
- Транспонирование 2D-массива с помощью zip
- Работа с CSV файлами в Python
- Функции any() и all() в Python
- Модуль itertools: эффективная работа с итераторами
- Измерение времени выполнения кода в Python
- Профилирование с Pandas
- Основы работы с базами данных в Python
- Декораторы в Python
- Проверка индексов коллекции
- Сортировка в Python
- Получение значений из словарей
- Объединение словарей в Python
- Метод enumerate() в Python
- Хэш-функции и метод цепочек
- Метод classmethod
- Глобальные переменные в Python
- Команда %dhist — список посещенных каталогов
- Работа с файлами в Python
- Установка библиотек в Python
- Логические операторы в Python
- Отображение HTML кода в Python
- Запрос пароля с помощью getpass
- Цикл for в Python
- Многоточие в Python
- Работа с датами в Python
- Создание коллекций из генератора
- Выражения-генераторы в Python
- Блок else в Python















