为什么下面不是在函数内部工作而是在外部工作?
def foo():
common = {'abc' : 'xyz'}
print(locals())
locals().update(common)
print(locals(),abc)
foo()
Run Code Online (Sandbox Code Playgroud)
错误:NameError:未定义全局名称“abc”
如果我在函数外运行它,它会起作用
common = {'abc' : 'xyz'}
print(locals())
locals().update(common)
print(locals(),abc)
Run Code Online (Sandbox Code Playgroud)