python装饰器理解

个人学习,仅供参考,非专业

装饰器的最大功能:在不改变函数原始代码的情况下为函数添加额外的功能,

这里我们定义一个求和函数 sun


现在我们在不修改函数代码的情况下添加一个输出函数名字的功能 

定义一个装饰器


然后使用log修饰sum函数



运行结果


这里发现,原来函数 sum 的名字 变成了 wrapper 


实际上装饰器的原理就是将原函数作为一个变量传入装饰函数,最后返回一个新的函数,包含原函数和附加功能

但是当其他地方我们用到我们的原函数sum的时候,sum.__name__就改变了,

为了解决这个问题我们引入工具functools



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值