Я читаю этот фрагмент кода в Python:
def decorator_function(original_function):
def wrapper_function(*arg,**kwargs):
print("This line is executed before the original function")
result = original_function(*arg, **kwargs)
print("This line is executed after the original function")
print (result)
return result #Why do we need to return result from this decorator?
return wrapper_function
@decorator_function
def display_info(name, age):
print(name, age)
display_info("You", 1)
display_info("Me", 99)
Декорированная функция возвращает None, а приведенный выше фрагмент кода даст тот же результат, независимо от того, есть ли у нас эта строка, return result
.
Мне интересно, есть ли какая-либо причина (Pythonic? Будущее обслуживание кода?), Чтобы вернуть этот None.
Фрагмент кода является частью учебника Python по декоратору на YouTube.
Спасибо