Python中如何使用闭包

2025-07-23 17:32:45

1、闭包通常需要满足三个条件:一是函数嵌套,在一个函数的内部定义了另一个函数。二是内部的函数里使用了外部函数的局部变量。三是外部函数的返回值是内部函数的引用。下图就是典型的闭包使用示例。

Python中如何使用闭包

2、从下图可以看到,外部函数outer的返回值就是内部函数inner,将返回结果保存至变量fun,fun的类型是function

Python中如何使用闭包

3、另外,outer中的print仅在运行outer函数时执行过一次,之后执行fun函数(也就是inner函数)并未执行outer函数内的print代码

Python中如何使用闭包

4、在inner函数中,因为要修改外部函数的局部变量,因此需要在前面用nonlocal蠹韦睥谚声明。可以看到每次执行fun都会将x加10,且没有其他途径可以修改x,实现了数据保护功能。

Python中如何使用闭包
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢