有了这个装饰器,我们就可以打印出什么时候开始和结束调用函数 , 对于排查函数的调用链非常方便 。
二、带参数的装饰器
上面的例子无论什么时候调用sum都会输出信息,如果我们需要按需输出信息怎么实现呢,这时就要用到带参数的装饰器了,如下代码:
对sum使用装饰器时没有参数,这时debug为0 , 所以调用sum时不会输出函数调用相关信息 。
对multi使用装饰器时有参数,这时debug为1,所以调用multi时会输出函数调用相关信息 。
三、函数名字问题
当我们打印被装饰后的函数名字时,不知道大家有没发现输出的不是函数本身的名字,如下代码会输出‘wrap’而不是‘sum’:
有时这种表现并不是我们想要的,我们希望被装饰后的函数名字还是函数本身,那要怎么实现呢?很简单,只需要引入functools.wraps即可,如下代码就会输出‘sum’了:
看完后是不是觉得python装饰器很简单,只要了解它的本质,怎么写都行 , 有好多种玩法呢 。
【python中函数装饰器的简单介绍】python中函数装饰器的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、python中函数装饰器的信息别忘了在本站进行查找喔 。
推荐阅读
- 抗险救灾的体育游戏,有趣的抗洪抢险游戏
- phpmysql分页控制显示页数,php实现分页显示
- 电商公司如何管理员工,电商公司人员
- linux命令不好用 linux 命令失效
- css不换行样式,Css不换行
- 组装电脑都需要买什么,组装电脑需要买什么线
- 模拟大自然哪个游戏好玩,模拟大自然游戏视频解说
- 清除按钮java代码 清除命令按钮代码编写
- SAP预提,Sap预提费用