Курс 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"

  1. Присоединение элементов коллекции
  2. Переопределение метода
  3. Создание множества в Python
  4. Визуализация пропусков данных
  5. Python: Фильтрация списков с помощью filter()
  6. Замена символов в Python
  7. Подписка на @SelectelNews
  8. Определение относительного пути
  9. Создание коллекций из выражения-генератора
  10. Регистрация на курсы SF Education
  11. Работа с необработанными строками
  12. Методы shutil для работы с файлами
  13. Инициализация объекта
  14. Обработка исключений в Python
  15. Получение идентификатора объекта в памяти
  16. Работа с аргументами командной строки
  17. Создание списка через цикл
  18. Lambda-функция в Python: использование с map() и sum()
  19. Создание словарей с defaultdict()
  20. Сортировка слиянием
  21. Работа с JSON данными в Python
  22. Изучение объектов с помощью dir()
  23. Декораторы в Python
  24. Избегание изменяемых аргументов
  25. Взаимодействие с внешними процессами в Python
  26. Удаление и повторная вставка ключа в OrderedDict
  27. Мощь вложенных функций в Python
  28. Распаковка элементов массива
  29. Работа с библиотекой requests
  30. Измерение времени выполнения с помощью time
  31. Создание копии итератора
  32. Управление асинхронными задачами на Python.
  33. Документирование функций в Python
  34. Создание лямбда-функций
  35. Применение функции к каждому элементу списка
  36. Декораторы в Python
  37. Работа со словарями с defaultdict из collections
  38. ChainMap.new_child() — добавление нового словаря
  39. Установка и использование emoji
  40. Работа с Path в Python
  41. Создание класса очереди
  42. Создание словарей и множеств в Python
  43. Форматирование строк в Python.
  44. Списковое включение в Python
  45. Работа с комплексными числами

Marketello читают маркетологи из крутых компаний