函数-命名空间
name space,命名空间即名称空间。用于放变量名和变量名与值绑定关系的地方。
不同变量的作用域不同就是由变量所在名称空间决定。
全局范围全局存活全局有效,局部范围临时存活局部有效。
- locals:函数内部空间,包括局部变量和形参。locals访问locals所在位置的命名空间
def namespace(c=None):
a=1
b=2
print("我在函数内部打印:",locals())
namespace()print("我在函数外部打印:",locals())
- globals:函数定义所在模块的名称空间,不包括函数局部变量和行参
c=1 def namespace(c=None): a=1 b=2 print("我在函数内部打印:",globals()) namespace() print("我在函数外部打印:",globals())
- builtins:内置模块名称空间
print(__builtins__) print(dir(__builtins__))