前言
最近在实现一个装饰器的过程中发现了一个很有意思的地方,在博客里面分享出来
不同的写法
三层函数嵌套,实现了可传参数的一个装饰器。
使用functools.partial函数实现了一个比较抽象的三层带参数装饰器。
有何异同
可以看到从代码的阅读层面来讲,第一个写法是比较易读的,第二种写法不容易阅读。从执行调用方面第二种更简单点。
先看以下第一种调用执行的方式:
第一种写法
装饰器传参数
装饰器不传参数
第二种写法
装饰器不带参数
装饰器带参数
可以看到使用了functools.partial函数的装饰器,在调用非必填参数时,可以不用使用括号。
除了写法理解比较抽象,这样的调用还是比较友好的。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.