python装饰器@
def login(func):#func=page
def inner():
print ('you have verified sucess')
return func()#这里等于以前的那个page函数
return inner
@login
def page ():
print ('welcome to web home page ')
执行login函数会去扫描@代码,把page函数当成参数传入到login函数中,函数是有返回值的,这时page函数被重新定义,login(page)的返回值就是login里的函数体,现在的page也就是被重新赋值,
之后我们调用page()是执行重新赋值的page。
转载于:https://blog.51cto.com/11518612/1957625