L>E>G>B
L:local 函数内部作用域
E:enclosing函数内部与内嵌函数之间
G:global 全局作用域
B:build-in 内置作用域(列表,元组,)
image.png
image.png
闭包:Closure:内部函数中对enclosing作用域的变量进行引用
函数实质与属性:
1:函数是一个对象
2:函数执行完成后内部变量回收
3:函数属性
4:函数返回值(返回的话不会被回收)
image.png
image.png
闭包主要实现了代码的封装和复用
image.png
使用Python闭包。必须满足以下三个条件:
我们必须有一个嵌套函数。
这个嵌套函数必须引用一个非局部变量(包含它的范围内的变量)。
封闭范围必须返回此功能。
装饰器
1:装饰器用来装饰函数
2:返回一个函数对象
3:被装饰函数标识符指向返回的函数对象
4:语法糖 @dec
@dec 作用等于my_sum= dec(my_sum)
image.png
网友评论