Курс 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. Асинхронный код в Python
  3. Создание множества в Python
  4. Типы возвращаемых значений в Python
  5. Быстрый поиск кода
  6. Форматирование заголовков в Python
  7. Транспонирование 2D-массива с помощью zip
  8. Основные функции и модули Python
  9. Ошибка NotImplemented в Python
  10. CSV строка разделение в Python
  11. Анализ текста на русском языке с помощью Pymystem3
  12. Операторы += в Python
  13. Функция print() — вывод информации
  14. Генераторы списков
  15. Сравнение неупорядоченных списков
  16. Оптимизация интернирования строк
  17. Поиск шаблона в начале строки
  18. Цикл for в Python
  19. Модуль math: основные функции
  20. Создание и использование ChainMap
  21. Удаление дубликатов из списка
  22. Декораторы в Python
  23. Python 3.12: переиспользование кавычек
  24. Поиск уникальных и повторяющихся элементов
  25. Цикл for в Python
  26. Работа с NumPy.linalg
  27. Делегирование в Python
  28. Работа с defaultdictами в Python
  29. Проверка условий: all и any
  30. Аннотации типов в Python
  31. Ускорение обработки данных с %autoawait
  32. Работа с кортежами
  33. Генераторы в Python
  34. Логические операторы в Python
  35. Функции высшего порядка в Python
  36. Перегрузка операторов в Python
  37. Подсказки при вводе данных в Python
  38. Возведение в квадрат с помощью itertools
  39. Переименование файлов в Python
  40. Псевдонимы в Python
  41. Область видимости переменных
  42. Python: библиотеки и функции
  43. Логирование в Python
  44. Метод splitlines() для разделения строк
  45. Комментарии в Python
  46. Python UserString — создание подклассов строк
  47. Python defaultdict добавление ключа

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