在内部函数中对外部函数的变量进行引用(不使用nonlocal),则内部函数称为闭包
- 闭包存在于嵌套关系的函数中,
- 嵌套的内部函数引用了外部函数的变量
- 嵌套的外部函数将内部函数名作为返回值返回
闭包的作用就是在函数执行结束后,保持函数内的变量不被销毁
def pri(a):
def one():
return a
return one
p=pri('i love chian')
print(p) # p的返回值为函数名 one
print(p()) # p()就是 one()
# 执行p,结束返回one【参数a还在】
# 执行one(),结束返回a

装饰器:https://blog.youkuaiyun.com/GrofChen/article/details/93184885
博客介绍了Python中闭包的相关知识。闭包存在于嵌套函数中,内部函数引用外部函数变量(不使用nonlocal),外部函数将内部函数名作为返回值。闭包能在函数执行结束后,保持函数内变量不被销毁,还给出了装饰器相关链接。
2万+

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



