函数的名称空间一共有三种:
- 内置空间,用来存放 Python 自带的一些函数,Python 程序运行时会首先加载
- 全局空间,当前 py 文件顶格编写的代码开辟的空间
- 局部空间,函数开辟的空间
程序的加载顺序是:内置空间 > 全局空间 > 局部空间
程序的取值顺序是:局部空间 > 全局空间 > 内置空间
程序取值顺序示例:
1 | a = 10 |
变量取值时会优先查看局部空间,找到变量 a,值为 5,打印了出来。
函数的作用域有两个:
- 全局作用域:内置空间 + 全局空间,使用
globals()
方法查看全局作用域 - 局部作用域:局部空间,使用
locals()
方法查看当前作用域(全局和局部作用域都可以查看,建议用此方法查看局部作用域)
1 | a = 10 |