Курс 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. Метод bool() в Python
  2. Поиск индексов в списке
  3. Генераторы в Python
  4. Переопределение метода
  5. Python: возвращение нескольких значений
  6. PUT запрос для обновления данных
  7. Избегайте изменяемых аргументов
  8. Операторы сравнения в Python
  9. Модуль os: работа с файлами и папками
  10. Бесконечная проверка в Python
  11. Возвращение нескольких значений через кортеж или класс
  12. Инверсия списка и строки
  13. Многострочные строки в Python
  14. Генераторы списков в Python
  15. Установка User-Agent в Python
  16. Генераторы в Python
  17. Функция enumerate() в Python
  18. Установка Python3.7 и PIP
  19. Объединение списков в Python.
  20. Оператор == в Python
  21. Измерение времени выполнения кода
  22. Работа со случайными элементами
  23. Объединение словарей в Python
  24. Транспонирование матрицы
  25. Создание коллекций из генератора
  26. Создание словарей и множеств в Python.
  27. Объединение списков в Python
  28. Проблема сравнения словарей
  29. Тестирование времени с Freezegun
  30. Базовые объекты Python
  31. Копирование объектов в Python
  32. Проверка элементов списка условием
  33. Обновление и получение данных в SQLite
  34. Сложные типы данных в Python
  35. Defaultdict в Python
  36. Циклы в Python
  37. capitalize() — изменение регистра первого символа строки
  38. Регистрация на TenChat
  39. Объединение списков в Python
  40. Работа с контекст-менеджером «with»
  41. Создание словарей с defaultdict
  42. Преобразование Word в PDF с Spire.Doc
  43. Использование super() в Python
  44. Преобразование Excel в PDF с Spire.XLS
  45. Лямбда-функции в Python
  46. Основы Python за 14 дней
  47. Поиск подстроки в строке
  48. Создание объекта времени
  49. Работа с timedelta

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