装饰器:
把一个函数当作参数,返回一个替代版的函数
本质就是一个返回函数的函数
在不改变原函数的基础上,给函数增加功能”
def desc(fun):
def add_info():
print('nihao')
fun()
return add_info
@desc
def login():
print('login...')
@desc
def logout():
print('logout...')
login()
logout()