Python装饰器语法糖
Python装饰器语法糖代码示例
####装饰器的固定格式 ##普通版本 deftimer(func): definner(*args,**kwargs): '''执行函数之前要做的''' ret=func(*args,**kwargs) '''执行函数之后要做的''' returnret returninner ##wraps版本 fromfunctoolsimportwraps defdeco(func): @wraps(func)#加在最内层函数正上方 defwrapper(*args,**kwargs): returnfunc(*args,**kwargs) returnwrapper ####带参数的装饰器 defouter(flag): deftimer(func): definner(*args,**kwargs): ifflag: print('''执行函数之前要做的''') ret=func(*args,**kwargs) ifflag: print('''执行函数之后要做的''') returnret returninner returntimer @outer(True) deffunc(): return'返回值' x=func() print(x)
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接