多语言展示
当前在线:1363今日阅读:61今日分享:18

如何理解python的闭包

什么是闭包?简单来讲:内部函数作为返回值给出,外部变量接收绑定后可以使用,闭包可以保存函数内部特定运行的一个状态python闭包是python装饰器的基础
工具/原料
1

python解释器

2

python的任意一种编辑器

如何形成闭包

形成闭包很容易,只需要满足以下几点

一个闭包例子
1

给出一个闭包的简单的例子,内部函数可以传递给外部的变量直接使用,而不需要再调用外部函数了,内部函数已经保存了外部函数相应的变量的状态

2

生成闭包后,内部函数的调用就不依赖外部函数了,它自身已经保存了外部函数的状态,可以在如上程序第三行加上print()验证

使用闭包好处
1

闭包优化了变量,原来需要类对象完成的工作,闭包也可以完成

2

使代码变得简洁,便于阅读代码

3

闭包是理解装饰器的基础

闭包的坏处

由于闭包引用了外部函数的局部变量,则外部函数的局部变量没有及时释放,消耗内存

注意事项

注意闭包的应用场景,python中一切皆对象,函数也是

推荐信息