全面讲解Python名称空间分类、加载顺序及取值顺序!

更新时间:02-09 教程 由 暮夏 分享

  所谓Python名称空间就是存放名字的空间,是对栈区的划分,有了名称之后,就可以在栈区中存放相同的名字。而在Python中,Python名称空间又被分为三类:全局命名空间、局部命名空间和内置命名空间,接下来是详细的内容介绍。

  一、名称空间分类

  1. 全局命名空间(Global):每个模块加载执行时创建的,记录了模块中定义的变量,包括模块中定义的函数、类、其他导入的模块、模块级的变量与常量。

  2. 局部命名空间(Local):每个函数所拥有的命名空间,记录了函数中定义的所有变量,包括函数的入参、内部定义的局部变量。

  3. 内置命名空间(Built-in):任何模块均可以访问,放着内置的函数和异常(比如:input,print,str,list,tuple...)。

  二、名称空间的加载顺序

  内置命名空间(程序运行前加载)-->全局命名空间(程序运行中:从上到下加载)-->局部命名空间(程序运行中:调用时才加载)

  三、名称空间的取值顺序

  在局部调用:局部命名空间-->全局命名空间-->内置命名空间

  在全局调用:全局命名空间-->内置命名空间

  综上所述,在寻找变量时,从小范围,一层一层到大范围去找寻。

声明:关于《全面讲解Python名称空间分类、加载顺序及取值顺序!》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_920596.html