• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

python装饰器理解

开发技术 开发技术 3周前 (09-04) 24次浏览
一 先理解这个
1、闭包
函数定义中若满足3个要素,则可称为闭包
① 外部函数A嵌套一个内部函数B
② 外部函数A返回内部函数B的函数名
③ 内部函数B调用非全局变量(即外部函数A的形参或者变量)
以下是对应的闭包例子
python装饰器理解

 
2、万能装饰公式:
只要你被装饰,那么相当于这个被装饰的函数的函数名=装饰器(被装饰的函数名) — 无论怎样,先记住它
 
二 函数装饰器
python装饰器理解

 

 python装饰器理解

 

 python装饰器理解

 
三 类装饰器
1、先理解这个
魔术方法__call__
假如存在类A,当执行A()()时会触发执行__call__方法(即类的对象加上括号的时候)
python装饰器理解

 
2、类装饰器
python装饰器理解

 

 python装饰器理解

 
四 装饰器应用
1、第一个应用 – 通过装饰器传参,实现类似数据驱动的内容
如果要实现装饰器传参,则需要在装饰器中定义3层函数
最外层函数的返回值是第二层函数名,第二层函数的返回值是第三层函数名
python装饰器理解

 

2、第二个应用 – 一个函数被多个装饰器装饰
记住:原理“从下往上”,执行“从上往下”
python装饰器理解

python装饰器理解

 

 

 

 


程序员灯塔 , 版权所有
转载请注明原文链接:https://www.wangt.cc/2020/09/python%e8%a3%85%e9%a5%b0%e5%99%a8%e7%90%86%e8%a7%a3/
喜欢 (0)