位置: IT常识 - 正文
推荐整理分享python装饰器如何保留原函数信息,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
说明
1、使用装饰器时,原函数似乎没有改变,但其元信息发生了变化——此时的原函数实际上是包裹后的wrapper函数。
2、若要保留原始函数的元信息,可以通过内置@functools.wraps(func)实现。
@functools.wraps(func)的作用是通过update_wrapper和partial将目标函数的元信息复制到wrapper函数中。
实例
#defdecoratordefdecorator_with_args(*args,**kwargs):print('Step1:enterwrapperwithargsfunc.')print(args)print(kwargs)defdecorator_func(func):@functools.wraps(func)defwrapper(*args,**kwargs):print('Step2:enterwrapperfunc.')returnfunc(*args,**kwargs)returnwrapperreturndecorator_func以上就是python装饰器保留原函数信息的方法,希望对大家有所帮助。更多Python学习指路:Python基础教程
上一篇:支付宝沙箱服务 (结合springboot实现,这里对接的是easy版本,工具用的是IDEA,WebStrom)(沙箱支付宝app正式版)
下一篇:织梦dedecms中添加函数来实现任意字段的调用(织梦如何添加浮动广告)
友情链接: 武汉网站建设