Декораторы добавляют переиспользуемый функционал к функциям и помогают соблюдать принцип разделения ответственности.
Они делают код модульным и аккуратным. Освой их, чтобы писать более питонично. 🥺
Пример:
def ask_for_passcode(func):
def inner():
print('Какой пароль?')
passcode = input()
if passcode != '1234':
print('Неверный пароль.')
else:
print('Доступ разрешён.')
func()
return inner
@ask_for_passcode
def start():
print("Сервер запущен.")
@ask_for_passcode
def end():
print("Сервер остановлен.")
start() # декоратор спросит пароль
end() # декоратор спросит пароль
👉 @PythonPortal
