格式:在执行的参数前加上@functon
例1:传一个参数
#模拟验证功能 def login(auth): def fun(arg): #为了避免程序一执行的时候就执行验证,需要再加一层函数。 print('验证成功') return auth(arg) #相当于执行home('echo')函数 return fun @login #添加装饰器 def home(name): print('welcome %s to home page!' %name) home('echo') #传入一个参数
输出结果:
验证成功
welcome echo to home page!
例2:传多参数
def login(auth): def fun(*args,**kwargs): print('验证成功') return auth(*args,**kwargs) return fun @login def tv(name,passwd): print('welcome %s to tv page!' %name) tv('pingy',123) #传入多个参数
输出结果:
验证成功
welcome pingy to tv page!