Во-первых, без декоратора вы просто передали бы возвращаемое значение input_text
центрирующей функции.
def centering(s):
return '<center>{}</center>'.format(s)
centered_text = centering(input_text)
Функция, которая делает это за вас, может выглядеть как
def input_centered_text():
text = input('Temp the text:')
centered_text = centering(text)
return centered_text
Декоратор, который может производить input_centered_text
из оригинального input_text
, будет выглядеть как
def center(f):
def _():
centered_text = f()
return centered_text
return _
и использоваться как
def input_text():
text = input('Type the text:\n')
return text
input_centered_text = center(input_text)
или
@center
def input_centered_text(): # Note the change in the function name
text = input('Type the text:\n')
return text