内置命名空间
就是py解释器已启动就可以使用的名字存储在内置命名空间中
内置的名字在启动解释器的时候被加载进内存里
全局命名空间
实在程序从上到下被执行的过程中依次加载进内存的
放置了我们设所有变量名和函数名
局部命名空间
函数内部定义的名字
当调用函数的时候,参会产生这个命名空间,随着函数的执行的结束,这个命名空间就被释放掉了
在局部:可以使用全局,内置命名空间中的名字
在全局:可以使用内置命名空间中的名字,但是不能在局部中使用
在内置:不能使用局部和全局的名字
func --> 函数的内存地址
函数名() 函数的调用
函数的内存地址() 函数的调用
作用域两种
全局作用域 —— 作用在全局 —— 内置和全局名字空间中的名字都属于全局作用域 ——globals()
局部作用域 —— 作用在局部 —— 函数(局部名字空间中的名字属于局部作用域) ——locals()
对于不可变的数据类型 在局部可以查看全局作用域中的变量但是不能直接修改
如果需要修改的话,需要在程序的开始添加globe声明
如果在函数中声明了一个globe变量,这个变量将作用于全局