def counter(x):
def _cnt():
#nonlocal x
x = x+1
print(x)
return x
return _cnt
a = counter(0)
print(a())
上面的代码给出了以下错误
UnboundLocalError:分配前引用的局部变量“x”
为什么这不能在 _cnt 的命名空间中创建一个值为 'x+1' 的新对象并将其绑定到 x。我们将在两个函数命名空间中都有引用 x