Python名称空间规则
名称到对象的映射。命名空间是一个字典的实现,键为变量名,值是变量对应的值。各个命名空间是独立没有关系的,一个命名空间中不能有重名,但是不同的命名空间可以重名而没有任何影响。
通俗讲:名称空间就是存放名字的地方,三种名称空间,(之前遗留的问题x=1,1存放于内存中,那名字x存放在哪里呢?名称空间正是存放名字x与1绑定关系的地方)
一、名称空间分类
1.全局命名空间(Global):每个模块加载执行时创建的,记录了模块中定义的变量,包括模块中定义的函数、类、其他导入的模块、模块级的变量与常量。
2.局部命名空间(Local):每个函数所拥有的命名空间,记录了函数中定义的所有变量,包括函数的入参、内部定义的局部变量。
3.内置命名空间(Built-in):任何模块均可以访问,放着内置的函数和异常(比如:input,print,str,list,tuple...)。
二、名称空间的加载顺序
内置命名空间(程序运行前加载)-->全局命名空间(程序运行中:从上到下加载)-->局部命名空间(程序运行中:调用时才加载)
三、名称空间的取值顺序
在局部调用:局部命名空间-->全局命名空间-->内置命名空间
在全局调用:全局命名空间-->内置命名空间
综上所述,在寻找变量时,从小范围,一层一层到大范围去找寻。
以上内容为大家介绍了Python名称空间规则,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

相关推荐HOT
更多>>
Python GUI开发工具选择
Python最大的特点就在于她的快速开发功能。作为一种胶水型语言,python几乎可以渗透在我们编程过程中的各个领域。这里我简单介绍一下用python进...详情>>
2023-11-07 17:03:00
Python异常代码含义对照表
异常名称描述BaseException所有异常的基类SystemExit解释器请求退出KeyboardInterrupt用户中断执行(通常是输入^C)Exception常规错误的基类StopI...详情>>
2023-11-07 16:14:45
Python中有哪些方法可以解压文件?
在Python学习和日常使用中,很容易造成文件过大。大的体积会大大增加我们的内存使用量,单独的文件是无法共享的。只能通过打包解压的方式分享给...详情>>
2023-11-07 15:24:43
python值传递和引用传递的作用是什么?
作为一种编程语言,Python也有很多变量和类型,正是因为这些特点,它才比较灵活。后面我们在写代码的时候,会遇到各种传参的情况,其中就涉及到...详情>>
2023-11-07 14:50:38