装饰器就是对闭包的使用
关于闭包可参见上一篇关于闭包的介绍
写个小程序来理解装饰器的具体实现过程
def deco(fun):
def in_deco(x,y):
print("in deco")
fun(x,y)
return in_deco
@deco
def bar(x,y):
print("in bar",x+y)
bar(1,2)
#1、deco(bar)》》》in_deco
#2、bar = in_deco
#3、bar() in_deco(1,2) bar(1,2)
#结果
in deco
in bar 3
本文通过一个简单的小程序示例,介绍了Python中装饰器的基本概念及其工作原理。装饰器是对闭包的一种应用方式,用于增强或修改函数行为,而无需改变其源代码。
4995

被折叠的 条评论
为什么被折叠?



