Python 命名空间是做什么的?
命名空间是一种实现范围的方法。在 Python 中,每个包、模块、类、函数和方法函数都拥有一个“命名空间”,变量名在此命名空间中解析。当某个函数、模块或包得到计算评估(即,开始执行)时,会创建一个命名空间。可以将其视为一种“评估上下文”。当函数等执行完毕时,命名空间将被删掉。变量将被删掉。另外还有全局命名空间,如果名称不在局部命名空间中,则使用该空间。
每个变量名都在本地命名空间(函数主体、模块等)中进行检查,然后在全局命名空间中进行检查。
通常只在本地命名空间中创建变量。global 和 non-local 语句可以在除本地命名空间之外的命名空间中创建变量。
广告