Python中的命名空间和范围
在Python中,每个包、模块、类、函数和方法函数都拥有一个“名称空间”,其中解析了变量名称。下面本篇文章就来带大家认识一下Python中的命名空间和范围,希望对大家有所帮助。
什么是命名空间:
命名空间是一个系统,用于确保程序中的所有名称都是唯一的,并且可以在没有任何冲突的情况下使用。多个名称空间可以使用相同的名称并将其映射到不同的对象。【视频教程推荐:Python教程】
举个例子,计算机中的目录文件系统结构。不用说,一个人可以拥有多个目录,每个目录中都可以有一个具有相同名称的文件。但是,人们可以通过指定文件的绝对路径来定向文件。
Python中的命名空间是作为Python字典实现的,这意味着它是从名称(键)到对象(值)的映射。用户无需知道这一点就可以编写Python程序以及使用命名空间时。
命名空间的类型:
本地命名空间:此命名空间包含函数内的本地名称。调用函数时会创建此命名空间,它只会持续到函数返回。
全局命名空间:此命名空间包含您在项目中使用的各种导入模块的名称。它是在模块包含在项目中时创建的,并且一直持续到脚本结束。
内置命名空间:此命名空间包含内置函数和内置异常名称。
命名空间的生命周期:
命名空间的生命周期取决于对象的范围,如果对象的范围结束,则该命名空间的生命周期结束。因此,无法从外部命名空间访问内部命名空间的对象。
什么是范围?
命名空间可以帮助我们唯一地识别程序中的所有名称。但是,这并不意味着我们可以在任何地方使用变量名称。名称还有一个范围,用于定义程序中可以使用该名称而不使用任何前缀的部分。就像命名空间一样,程序中也有多个范围。
范围是指程序的一个区域,其中可以直接访问命名空间,即不使用命名空间前缀。换句话说:名称的范围是程序的一个区域,可以明确地使用该名称,例如在函数内部。
名称的名称空间与其范围相同。范围是静态定义的,但它们是动态使用的。
以下是程序执行期间可能存在的一些范围的列表:
● 本地范围:它是最里面的范围,包含当前函数中可用的本地名称列表。
● 所有封闭函数的范围:搜索名称从最近的封闭范围开始并向外移动。
● 包含当前模块中所有全局名称的模块级作用域。
● 包含所有内置名称列表的最外层作用域。最后搜索此范围以查找您引用的名称。
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注码农之家相关教程栏目!!!
以上就是Python中的命名空间和范围的详细内容,更多请关注码农之家其它相关文章!
以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。