Python 的 LEGB 作用域
在 Python 中,LEGB 代表四种作用域类型,优先级从高到低为:
-
L(Local,局部作用域)
函数内部定义的变量(包括函数参数),仅在当前函数内可见。
例:def func(): x = 10中,x是局部整数。 -
E(Enclosing,嵌套作用域)
外层嵌套函数中定义的变量,对内部嵌套函数可见。
例:def outer(): x = 20 # 嵌套作用域的整数 def inner(): print(x) # 可访问 outer() 中的 x -
G(Global,全局作用域)
模块(文件)级别定义的变量,在整个模块内可见(需用global声明在函数内修改)。
例:x = 30(文件顶层定义),是全局整数。 -
B(Built-in,内置作用域)
Python 解释器预定义的变量/常量(如True、False、None),属于内置命名空间。
总结:一个整数属于 LEGB 中的哪个位置,完全由它在代码中被定义的位置决定,而非整数类型本身的特性。

浙公网安备 33010602011771号