p; res=func(*args,**kwargs) return res else: print('用户名或密码错误') return wrapper ? def timmer(func): def wrapper(*args,**kwargs): start_time=time.time() res=func(*args,**kwargs) stop_time=time.time() print(stop_time-start_time) return res return wrapper ? @timmer
5.86 有参装饰器
import time current_user={ 'username':None } def auth(engine):
5.87 有参装饰器模板
def outter2(x,y,z): def outter(func): def wrapper(*args,**kwargs): res=func(*args,**kwargs) return res return wrapper return outter @outer2(1,2,3)
使用:在被装饰对象正上方单独一行,@有参装饰器名(1,2,3)
@有参装饰器名(1,2,3) def foo(): pass
|