面试题答案
一键面试Python闭包概念
在Python中,闭包(Closure)是一种特殊的函数,它由内部函数和外部函数组成。外部函数返回内部函数,并且内部函数能够访问并记住外部函数作用域中的变量,即使外部函数已经执行完毕返回,这些变量仍然会被保留在内存中,供内部函数使用。
计数器功能示例
def counter():
count = 0
def inner():
nonlocal count
count = count + 1
return count
return inner
my_counter = counter()
print(my_counter())
print(my_counter())
print(my_counter())
在上述代码中,counter
是外部函数,inner
是内部函数。inner
函数能够记住并修改 counter
函数作用域中的 count
变量,即使 counter
函数已经返回。每次调用 my_counter
(即 inner
函数),都会使 count
增加1并返回新的值,从而实现一个简单的计数器功能。