在Python中实现闭包
目录
在Python中实现闭包
Python 实现闭包有两个要点:
- 在外层函数内部声明一个内部函数。
- 内部函数引用外部函数的变量。
举个例子:
|
|
这是一个没有什么实际意义的例子,不过它的的确确在 Python 中实现了闭包。
如何理解闭包
闭包由函数以及声明该函数的词法环境组合而成,同时包含了闭包创建时作用域内的任何局部变量。
正常情况下,add_ten()
执行结束后,其局部变量会失效,而在这个例子中,add_ten()
返回了add(num)
的引用,局部变量被封装在了闭包中。因此,当closure
被调用时,变量ten
仍然可用。
闭包有什么作用
坦白来说,我从来没有在项目代码中使用过闭包,不过从代码实现上来看,闭包应该有两个主要的作用:
- 保护内部变量。
- 实现函数工厂。
后面如果我在项目中如果用到了闭包技巧的话,再来详细说说吧。
收~
原文链接:在Python中实现闭包
Buy me a coffee~

