天天看点

笔记:python基础之函数命名空间

一、命名空间定义

1、内置命名空间:①python解释器已启动就可以使用的名字储存在内置命名空间,如print、input,是可以直接调用的;②内置名字在启动解释器的时候被加载进内存里。

2、全局命名空间:①是在程序从上到下被执行的过程中依次加载进内存的名字;②放置了我们设置的所有变量名和函数名。

3、局部命名空间:①就是在函数内部定义的名字;②当调用函数的时候,才会发生这个名字空间,随着函数执行的结束,这个命名空间就又消失。

二、命名空间的依赖倒置

在局部→可以使用全局、内置命名空间中的名字。

在全局→可以使用内置命名空间中的名字,但不能用局部中的名字。

在内置→不能使用局部和全局的名字。

依赖倒置的理解:当自己有的时候,就不找上级要,如果没有,就找上一级要,如果上级没有,再找上上级要,再没有就报错,这种调用时查看,但不能修改。只有加了global才能修改。

笔记:python基础之函数命名空间

当我们在全局定义了和内置名字空间中同名的名字时,会使用全局的名字,多个函数应该拥有多个独立的局部名字空间,不互相共享。

三、举例说明

如封装函数def f()→f()为调用函数,函数执行,而f指向了函数的内存地址

笔记:python基础之函数命名空间