【发布时间】:2015-05-18 23:17:49
【问题描述】:
在 Python 中,globals() 返回全局符号表的表示,而locals() 返回本地状态的表示。虽然两者都返回字典,但对globals() 的更改会在全局符号表中生效,而对locals() 的更改则无效。
为什么会这样?
【问题讨论】:
-
@BartoszKP:实际上没有一个答案是正确的。
-
@MartijnPieters 接受的答案本质上与您所说的相同-您不应该修改本地人,因为它会产生未定义的行为。如果您认为您的答案更好,也许您可以考虑将其发布在此处,而不是此处。如果您坚持,我不会反对另一个问题作为这个问题的副本。但似乎你不需要为此投票:)
-
@BartoszKP:不过可能有更好的骗子。
-
@MartijnPieters 你是对的。这是我找到的最好的,但我承认我在这上面花的时间不超过 5 分钟 :)
标签: python state python-internals mutability