Курс Python → Декораторы в Python

Декораторы в Python — это мощный инструмент, который позволяет изменить поведение функции, не изменяя ее исходный код. Они представляют собой функции, которые принимают другую функцию в качестве аргумента и возвращают новую функцию. При вызове функции, к которой применен декоратор, сначала выполняется код декоратора, а затем уже сама функция.

Пример использования декоратора можно увидеть в следующем коде:


def print_argument(func):
    def wrapper(*args, **kwargs):
        print(f"Аргументы функции: {args}")
        result = func(*args, **kwargs)
        return result
    return wrapper

@print_argument
def greet(name):
    return f"Привет, {name}!"

print(greet("Мир"))

В данном примере мы создаем декоратор print_argument, который выводит аргументы функции перед ее выполнением. Затем мы применяем этот декоратор к функции greet, которая принимает имя и возвращает приветствие. При вызове greet(«Мир») сначала будет выведено «Аргументы функции: (‘Мир’,)», а затем «Привет, Мир!».

Декораторы можно применять к любому количеству функций, обеспечивая повторное использование одного и того же кода для различных функций. Они широко используются во многих популярных библиотеках и фреймворках Python для добавления дополнительной функциональности без изменения исходного кода функций.

Использование декораторов позволяет сделать код более читаемым, модульным и эффективным. Они предоставляют простой способ добавления дополнительной логики к функциям, не засоряя их основной код. Поэтому освоение работы с декораторами является важным навыком для любого разработчика Python.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Функции классификации комплексных чисел
  2. Управление асинхронными задачами на Python.
  3. Подписка на Kaspersky Team
  4. Python: Splat-оператор и splatty-splat
  5. Тестирование времени с Freezegun
  6. Проверка на палиндром
  7. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  8. Присоединение элементов коллекции
  9. Анонимные функции в Python
  10. Подписка на каналы разработчиков
  11. Разделение строки в Python
  12. Defaultdict в Python
  13. Обработка ошибки IndexError
  14. Наиболее частотные элементы с помощью Counter
  15. Экспорт данных с помощью writefile
  16. Проверка условий в Python
  17. PEP-401: оператор
  18. Работа со словарями Python
  19. Аргумент по умолчанию
  20. Модуль antigravity: генерация координат
  21. Удаление ключа из словаря
  22. Доступ к локальным переменным
  23. Цикл for в Python
  24. Создание лямбда-функций
  25. Использование *args
  26. Бесконечные списки в Python
  27. Поиск наиболее частого элемента
  28. Удаление файлов с shutil.os.remove()
  29. Обработка данных в Python
  30. Декораторы в Python
  31. Работа с процессами в Python
  32. Использование defaultdict в Python
  33. Переопределение метода xor в Python
  34. Форматирование строк с f-строками
  35. Установка и использование модуля «howdoi»
  36. Список импортированных модулей в Python
  37. Вызов внешних программ в Python с помощью sh
  38. Условное добавление элементов в список
  39. Извлечение аудио из видео
  40. Операторы сравнения в Python
  41. Итерации в Python
  42. Списковое включение в Python
  43. Структуры данных в Python
  44. Асинхронное выполнение задач в Python
  45. Удаление файлов в Python
  46. Проверка на истинность объектов в Python
  47. Colorama: окрашивание текста в Python
  48. Оператор «not» в Python

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