为什么global
不能像我认为的那样在嵌套场景中工作?我怎样才能获得相同的访问权限?
a = 0
def outer():
def inner():
global a
a = 100
print (a)
if __name__ == '__main__':
outer() # 0
答案 0 :(得分:1)
因为您实际上从未调用执行分配的inner()
:
def outer():
def inner():
global a
a = 100
inner() # Invoke it
print (a)
现在正确打印100
。