模块概念:
自我包含并且有组织的代码片段的就是模块
每一个文件都被看作是一个独立的模块,每个模块也可以被看作是一个文件,模块的文件名就是模块的名字加上扩展名.py
一个名称空间就是一个从名称到对象的关系映射集合,每个模块都定义它自己的唯一的名称空间
python的三大名称空间为:局部名称空间、全局名称空间和内键名称空间
python 解释器首先加载内建名称空间,由__builtins__模块中的名字构成
__builtins__和__builtin__的区别:
访问一个属性必须在三个名称空间内查找
导入模块:
import语句
导入多个模块:import module1[,module2[,...moduleN]]
from-import语句:
在模块里导入指定的模块属性
from module import name1[,name2[,...nameN]]
一个模块只被加载一次,加载只在第一次导入时加载
__future__模块 :
至少确保在2.1之前版本的Python可以正常运行一些新的语言特性
模块內建函数:
__import__():作为导入模块的函数,import语句调用
__import__()函数完成工作
__import__(module_name[,globals[,locals[,fromlist]]])
module_name变量是要导入的模块名,globals是包含当前全局符号表的名字的字典,locals是包含局部符号表的名字的字典
调用import sys语句可以如下使用:
sys = __import__('sys')
globals()和locals():
这两个內建函数分别返回调用者全局和局部名称空间的字典
局部名称空间代表在函数执行时定义的所有名字,locals()函数返回的就是包含这些名字的字典
globals()返回函数可访问的全局名字
reload():
reload()內建函数可以重新导入已导入的模块:reload(module)