Python基础017--模块的导入及內建函数globals()
2018-02-28 本文已影响5人
不一样的丶我们
模块的导入以及內建函数globals()、locals()的使用
- 模块的导入方法
- import module
- import module1,module2,module3...
- from module import name
- 在自定义模块中导入指定的模块属性
- 模块导入顺序
- python标准库模块
- python第三方模块
- 应用程序自定义模块
-
內建函数globals()和locals()的使用
- locals()返回的是局部名字空间的拷贝,对其修改,对实际的局部名字空间中的变量值无影响-->返回的是局部变量
- globals()返回的是实际的全局名字空间,可以修改全局变量的值-->返回的是当前模块的全局变量
- locals()是只读的,globals()不是;只读是值对于原有变量的只读;还可以对locals()赋值;
In [3]: a = 5 In [4]: def foo(arg): ...: a = 1 ...: print locals() ...: print 'a=',a ...: locals()['a'] = 2 ...: print locals() ...: print 'a=',a ...: In [5]: foo(3) {'a': 1, 'arg': 3} a= 1 {'a': 1, 'arg': 3} # 使用locals()修改之后,实际局部名字空间中变量值无影响 a= 1 In [7]: print 'a=',a a= 5 In [8]: globals()['a'] = 6 In [10]: print 'a=',a # 使用globals()修改之后,实际全局名字空间中变量值发生了改变 a= 6