https://blog.csdn.net/jasonblog/article/details/7338840 每个名字空间(或者说作用域)都对应一个PyCodeObejct 在这里全局global作用域一个;函数一个;类一个;所以有3个作用域; 顺便了解一下LEGB locals 是函数内的名字空间,包括局部变量和形参 enclosing 外部嵌套函数的名字空间(闭包中常见) globals 全局变量,函数定义所在模块的名字空间 builtins 内置模块的名字空间 而查找的优先顺序从左到右以此是: L -> E -> G -> B