Курс 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. Фильтрация списков с itertools
  2. Методы split() и join() — Python строк.
  3. Добавление элементов в список
  4. Обрезка изображения с Pillow
  5. Поиск наиболее частого элемента в списке
  6. Форматирование строк с помощью f-строк
  7. Комментарии в Python
  8. Добавление элемента в список.
  9. Создание матрицы в Python
  10. Оператор обр. импликации
  11. Красивый вывод списка
  12. Математические функции в Python
  13. Атрибуты класса и экземпляра
  14. Оптимизация памяти с __slots__
  15. Изменение логики работы с временем
  16. Разделение строк в Python
  17. Запрос DELETE с библиотекой requests
  18. Генераторы в Python
  19. Транспонирование 2D-массива с помощью zip
  20. Работа с CSV файлами в Python
  21. Функции any() и all() в Python
  22. Модуль itertools: эффективная работа с итераторами
  23. Измерение времени выполнения кода в Python
  24. Профилирование с Pandas
  25. Основы работы с базами данных в Python
  26. Декораторы в Python
  27. Проверка индексов коллекции
  28. Сортировка в Python
  29. Получение значений из словарей
  30. Объединение словарей в Python
  31. Метод enumerate() в Python
  32. Хэш-функции и метод цепочек
  33. Метод classmethod
  34. Глобальные переменные в Python
  35. Команда %dhist — список посещенных каталогов
  36. Работа с файлами в Python
  37. Установка библиотек в Python
  38. Логические операторы в Python
  39. Отображение HTML кода в Python
  40. Запрос пароля с помощью getpass
  41. Цикл for в Python
  42. Многоточие в Python
  43. Работа с датами в Python
  44. Создание коллекций из генератора
  45. Выражения-генераторы в Python
  46. Блок else в Python

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