二、请解释名称空间、作用域、加载顺序和取值顺序的内涵及其相互关系?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2475个文字,预计阅读时间需要10分钟。
一、命名空间:Python使用命名空间来记录变量的痕迹。命名空间是一个字典(dictionary),其键是变量名,值是变量的值。当程序运行时,代码从上到下执行,记录变量的变化。
一、命名空间
- Python使用叫做命名空间的东西来记录变量的轨迹。命名空间是一个 字典(dictionary) ,它的键就是变量名,它的值就是那些变量的值。
- 当程序运行时,代码从上之下一次执行,他会将变量与值的关系存储在一个空间中,这个空间叫做名称空间,命名空间,全局名称空间。
在一个 Python 程序中的任何一个地方,都存在几个可用的命名空间。
- 每个函数都有着自已的命名空间,叫做局部命名空间,它记录了函数的变量,包括函数的参数和局部定义的变量。
- 每个模块拥有它自已的命名空间,叫做全局命名空间,它记录了模块的变量,包括函数、类、其它导入的模块、模块级的变量和常量。
- 还有就是内置命名空间,任何模块均可访问它,它存放着内置的函数和异常,内置命名空间中存放了python解释器为我们提供的名字:input,print,str,list,tuple...它们都是我们熟悉的,拿过来就可以用的方法。
二、命名空间查找
当一行代码要使用变量 x 的值时,Python 会到所有可用的名字空间去查找变量,按照如下顺序:
- 局部命名空间:特指当前函数或类的方法。如果函数定义了一个局部变量 x,或一个参数 x,Python 将使用它,然后停止搜索。
- 全局命名空间:特指当前的模块。如果模块定义了一个名为 x 的变量,函数或类,Python 将使用它然后停止搜索。
- 内置命名空间:对每个模块都是全局的。
本文共计2475个文字,预计阅读时间需要10分钟。
一、命名空间:Python使用命名空间来记录变量的痕迹。命名空间是一个字典(dictionary),其键是变量名,值是变量的值。当程序运行时,代码从上到下执行,记录变量的变化。
一、命名空间
- Python使用叫做命名空间的东西来记录变量的轨迹。命名空间是一个 字典(dictionary) ,它的键就是变量名,它的值就是那些变量的值。
- 当程序运行时,代码从上之下一次执行,他会将变量与值的关系存储在一个空间中,这个空间叫做名称空间,命名空间,全局名称空间。
在一个 Python 程序中的任何一个地方,都存在几个可用的命名空间。
- 每个函数都有着自已的命名空间,叫做局部命名空间,它记录了函数的变量,包括函数的参数和局部定义的变量。
- 每个模块拥有它自已的命名空间,叫做全局命名空间,它记录了模块的变量,包括函数、类、其它导入的模块、模块级的变量和常量。
- 还有就是内置命名空间,任何模块均可访问它,它存放着内置的函数和异常,内置命名空间中存放了python解释器为我们提供的名字:input,print,str,list,tuple...它们都是我们熟悉的,拿过来就可以用的方法。
二、命名空间查找
当一行代码要使用变量 x 的值时,Python 会到所有可用的名字空间去查找变量,按照如下顺序:
- 局部命名空间:特指当前函数或类的方法。如果函数定义了一个局部变量 x,或一个参数 x,Python 将使用它,然后停止搜索。
- 全局命名空间:特指当前的模块。如果模块定义了一个名为 x 的变量,函数或类,Python 将使用它然后停止搜索。
- 内置命名空间:对每个模块都是全局的。

