В Python символ @ используется для создания декораторов. Декораторы - это специальный синтаксис, который позволяет изменить поведение функции или метода без изменения его самого. Декораторы очень удобны для добавления дополнительной функциональности к существующему коду.
Декораторы в Python выглядят следующим образом:
@decorator_name def function_name(): # код функции
То есть перед объявлением функции вы указываете символ @ и имя декоратора. Декоратор - это обычная функция, которая принимает функцию в качестве аргумента и возвращает новую, измененную функцию.
Пример декоратора, который выводит сообщение до и после выполнения функции:
def my_decorator(func): def wrapper(): print("До выполнения функции") func() print("После выполнения функции") return wrapper @my_decorator def say_hello(): print("Привет, мир!") say_hello()
Когда мы вызываем функцию say_hello, декоратор my_decorator оборачивает её и добавляет дополнительное поведение - вывод сообщений до и после выполнения функции.
Декораторы - это мощный инструмент в Python для изменения поведения функций или методов. Они позволяют сделать код более модулярным, упростить его понимание и сделать его более гибким.