当前位置:网站首页>函数闭包
函数闭包
2022-07-24 05:17:00 【梅花三】
产生条件
- 外部函数中定义了内部函数
- 内部函数引用了外部函数中的变量
- 外部函数是有返回值,并且返回的值是:内部函数名
定义格式
def 外部函数():
...
a = ...
def 内部函数():
...
调用a...
return 内部函数
举例
// 定义
def func(a, b):
c = 10
def inner_func():
s = a + b + c
print(s)
return inner_func
// 调用
ifunc = func(3, 5)
ifunc()
作用
- 可以使用同级的作用域
- 读取其他元素的内部变量
- 延长作用域
缺点
- 作用域没有那么直观
- .闭包引用了外部函数的局部变量,则外部函数的局部变量没有及时释放,变量不会被垃圾回收,所以有一定的内存占用问题,消耗内存
边栏推荐
猜你喜欢
随机推荐
C语言从入门到入土——操作符超详细总结
Constructor_ Map constructor
node连接mysql,使用navicat可视化
面向 对象
umi之define属性
reflex
canvas - 旋转
新语法01_Es6新语法
C语言进阶篇 五.动态内存管理
一文node安装下载和配置
/etc/rc.local 设置UI程序开机自启动
es10小计flat和flatMap
Integration of SSM
canvas - 填充
Redis的使用
C2 random generation function seed, numpy. Random. Seed(), TF. Random. Set_ Seed Learning + reprint and sorting
16进制转rgb
special effects - 返回顶部(小猫特效)
数据类型概括
What is the function of key









