Курс Python → Декораторы в Python
Декораторы в Python — это специальные функции, которые могут изменить поведение другой функции или класса без изменения их собственного кода. Они позволяют добавлять дополнительную функциональность к существующему коду, не изменяя его исходную реализацию. Декораторы могут использоваться, например, для логирования, кэширования, проверки аргументов или управления доступом к функциям.
Для создания декоратора в Python используется символ @, за которым следует имя функции-декоратора. Функция-декоратор принимает другую функцию в качестве аргумента и возвращает новую функцию или класс. Это позволяет применять декоратор к другим функциям, чтобы изменить или расширить их поведение.
def square_decorator(func):
def wrapper(*args, **kwargs):
result = func(*args, **kwargs)
return result ** 2
return wrapper
@square_decorator
def square(x):
return x
В приведенном примере функция square_decorator() является декоратором, который принимает функцию в качестве аргумента и возвращает новую функцию, которая возводит результат выполнения исходной функции в квадрат. После применения декоратора @square_decorator к функции square(), результат ее выполнения будет возводиться в квадрат.
Использование декораторов позволяет сделать код более модульным, читаемым и гибким. Они позволяют разделить различные аспекты функциональности программы и применять их по отдельности к различным частям кода. Благодаря декораторам можно эффективно использовать и переиспользовать код, делая его более универсальным и поддерживаемым.
Другие уроки курса "Python"
- Путь к интерпретатору Python
- UserString в Python
- Работа с NumPy
- Анализ текста на русском языке с помощью Pymystem3
- Colorama: окрашивание текста в Python
- Асинхронное выполнение задач в процессах
- Возврат нескольких значений
- Метод remove() для удаления элемента из списка
- Магические методы в Python
- Освобождение памяти в Python
- Создание комплексных чисел
- Вложенные генераторы в Python
- Ускорение выполнения кода в Python
- Определение объема памяти объекта
- Векторизация в Python с NumPy.
- Вычисление натуральных логарифмов в NumPy
- Метод join() с набором
- Отправка POST-запроса в REST API
- Печать списка с помощью метода join
- Динамические маршруты во Flask
- Python Менеджер контекста
- Оператор деления для класса Rational
- Замена символов в Python
- Исправление ошибки NameError
- Сериализация объектов в Python
- Протокол управления контекстом
- Работа с PosixPath() в Python
- Основы Python
- Раздувающийся словарь в Python
- Преобразование списка в словарь через генератор
- Работа с модулем random
- Извлечение новостей с помощью newspaper3k
- Установка и использование emoji
- Создание .exe файла с pyinstaller
- Метод join() для объединения элементов в строку.
- Частичное совпадение ввода
- Настройка шрифта и цвета в Tkinter
- Dict Comprehension в Python
- Удаление знаков препинания в Python
- Оператор is в Python
- Проверка файла .py на синтаксис.
- Разделение строк методом split()
- TypedDict для kwargs в Python 3.12















