南强小屋 Design By 杰米
Python装饰器语法糖代码示例
####装饰器的固定格式
##普通版本
def timer(func):
def inner(*args,**kwargs):
'''执行函数之前要做的'''
ret = func(*args,**kwargs)
'''执行函数之后要做的'''
return ret
return inner
##wraps版本
from functools import wraps
def deco(func):
@wraps(func) #加在最内层函数正上方
def wrapper(*args,**kwargs):
return func(*args,**kwargs)
return wrapper
####带参数的装饰器
def outer(flag):
def timer(func):
def inner(*args,**kwargs):
if flag:
print('''执行函数之前要做的''')
ret = func(*args,**kwargs)
if flag:
print('''执行函数之后要做的''')
return ret
return inner
return timer
@outer(True)
def func():
return '返回值'
x=func()
print(x)
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接
南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米
暂无Python装饰器语法糖的评论...