当前位置: 首页 > 图灵资讯 > 行业资讯> python闭包详解(实例)

python闭包详解(实例)

发布时间:2025-09-23 10:55:26

相信大多数学过编程的同学都很熟悉“闭包”这个词,但有时候还是很难理解的。

首先,定义:封闭包是由函数和相关引用环境组成的实体。例如,参考资源中有一个定义:在实现深度约束时,需要创建一个能够显示引用环境的东西,并将其与相关子程序捆绑在一起,因此整个捆绑被称为封闭包。

python闭包(closure)其实并不是很复杂。

一般来说,如果在内部函数中引用外部作用域(但不是全局作用域)的变量,则内部函数被认为是封闭的(closure)。它只是一个由名称(变量)指代的“内层”函数,而这个名称(变量)是“外层”包含其函数的本地变量。

也许你还是不明白什么是闭包,没关系,看完下面的小例子你一定会明白的!

#!/usr/bin/envpython
#coding=utf-8
#http://www.pythontab.com
#定义函数
defplus(number):
#在函数内部再定义函数,其实这个里面的函数就被认为是闭包
defplus_in(number_in):
#在这里打印number_in变量,让大家更清楚传输的变量是哪一个。
printstr(number_in)+"\r\n"
returnnumber+number_in
#事实上,这里返回的是闭包的结果
returnplus_in

#给plus函数赋值,这20是给参数number
v1=plus(20)
printv1(100)#注意这里的100实际上给参数number_in

运行结果

100

120

注:100是print str(number_in) + "\r\n"打印结果,说到这里,大家都知道什么是封包~~

相关文章

Python中reduce函数和lambda表达式的学习

Python中reduce函数和lambda表达式的学习

2025-09-25
Python小白必学的面向对象

Python小白必学的面向对象

2025-09-25
一个例子解释python装饰器

一个例子解释python装饰器

2025-09-25
深入理解Python的set和dict

深入理解Python的set和dict

2025-09-25
Python中正则表达式的巧妙使用

Python中正则表达式的巧妙使用

2025-09-25
5分钟搞定Python中函数的参数

5分钟搞定Python中函数的参数

2025-09-25