LEGB是python的一种规则和限制,要想理解,必须先了解下命名空间和作用域。
命名空间
命名空间是一个变量的可用范围,变量名在不同命名空间内可相同,但是在同一个命名空间内不能相同。在python中命名空间是用字典来表示的,也就是变量名+映射对象的组合,变量名等同于key,key相同的话无法分辨取值,所以在同一个命名空间内变量名不能一样。
作用域:
LEGB是python的一种规则和限制,要想理解,必须先了解下命名空间和作用域。
命名空间
命名空间是一个变量的可用范围,变量名在不同命名空间内可相同,但是在同一个命名空间内不能相同。在python中命名空间是用字典来表示的,也就是变量名+映射对象的组合,变量名等同于key,key相同的话无法分辨取值,所以在同一个命名空间内变量名不能一样。
作用域: