Python:变量作用域
来自KlniuWiki
Python的变量作用域有四个,Local, Enclosing Function locals, Global(Modules), Built-in(Python)。
变量在作用域内的搜索顺序依照LEGB原则,即先Local,再Encloing Function locals, 其次Global,再Built-in。
Local
Local是指在一个函数即def之内的,其作用域只在此函数之内,例如:
def a(): x = 1 print(x)
输出:
Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'x' is not defined
上述的x即是一个局部(Local)变量。出了变量作用域后,变量不再生效。