【发布时间】:2018-02-12 08:33:43
【问题描述】:
在学习 Python 的 LEGB 范围规则时,我想更深入地了解全局在 Python 中的工作原理。似乎即使我引用了一个未定义的变量(这也不是内置的),该代码也不会给我一个错误。请帮我弄清楚到底发生了什么。
def hey():
x = 1
def hey2():
global ew #ew not defined in the module
x = 2
print(x)
hey2()
print(x)
hey()
OUTPUT: 2
1
【问题讨论】:
-
阅读所有这些答案,您将对全球的运作方式有更深入的了解,包括您当前的担忧:stackoverflow.com/questions/423379/…
-
由于您没有使用该变量,因此实际上没有发生任何事情。
标签: python python-3.x python-2.7 scope global