提问人:NKUwakwe 提问时间:1/16/2022 最后编辑:NKUwakwe 更新时间:1/16/2022 访问量:87
为什么 locals()['var_name'] = value 会影响实际的本地命名空间?
Why does locals()['var_name'] = value affect the actual local namespace?
问:
def f():
s = 'foo'
loc = locals()
loc['s'] = 'bar'
print(s)
loc['z'] = 'baz'
print(locals())
f()
我知道 locals 函数返回本地命名空间的副本。这就是为什么 s 的值不会在实际的本地命名空间中被修改的原因。如果是这样的话,那么为什么要查找的额外键值对会影响实际的本地命名空间呢?
答: 暂无答案
评论
print(z)
__import__('dis').dis(lambda: z)