解释python闭包
时间: 2023-02-08 16:11:45 浏览: 128
详解python中的闭包
闭包是指在函数内部定义另一个函数,并且这个内部函数访问了外部函数的变量。这些变量被"封闭"在内部函数中,不能被外部函数或全局作用域访问,因此被称为闭包。
一个典型的用例是使用闭包来实现计数器。例如,下面这个例子中,我们定义了一个函数 counter, 它返回另一个函数,这个函数每次被调用时都会增加一个计数器的值。
```python
def counter():
count = 0
def inc():
nonlocal count
count += 1
return count
return inc
c = counter()
print(c()) # 1
print(c()) # 2
print(c()) # 3
```
在上面的代码中,inc函数是一个闭包,因为它访问了外部函数 counter 的变量 count。
闭包可以在函数式编程中很有用,它们可以在不修改全局变量的情况下实现类似于全局变量的效果。
阅读全文