命名空间(Namespace)
.
- 描述
命名空间提供了在项目中避免名字冲突的一种方法,各个命名空间都是独立的,没有任何关系,所以一个命名空间中不能有重复名,但不同的命名空间是可以重名而没有任何影响
官方文档:
A namespace is a mapping from names to objects.Most namespaces are currently implemented as Python dictionaries。
命名空间(Namespace)是从名称到对象的映射,大部分的命名空间都是通过Python字典来实现的
.
- 命名空间种类
a.内置名称(built-in names),Python语言内置的名称,比如函数名abs、len、str(Python运行起来,它们就存在了)
b.全局名称(global names),模块中定义的名称,记录了模块的变量,包括函数、类、其他导入的模块、模块级的变量和常量(不同模块的全局命名空间彼此独立)
c.局部名称(local names),函数中定义的名称,记录了函数的变量,包括函数的参数和局部定义的变量(类中定义的也是)
.
- 命名空间查找顺序
局部的命名空间 > 全局命名空间 &