python包导入再谈
python包导入机制
包是指含有__init__.py的文件夹,模块就是一个.py文件。
python的包和模块是先查找buil-in moudle然后是sys.path这个list里的所有路径。
- sys.path[0]是启动Python解释器的脚本所在路径
- 比如运行
python task/admin.py,sys.path[0]是'/home/code/taskman/task' - 启动脚本是符号链接时,
sys.path[0]是实际文件所在路径,详见 - 如果启动的是python解释器,如idle,ipython等,sys.path[0]是
''。
- 比如运行
- 如果sys.path[0]是
'',这个值等于当前工作目录也就是os.getcwd()的值,也就是linux的pwd的值,你可以用os.chdir来改变工作路径。 - sys.path里余下的元素是python环境变量里的一些路径
还是分析之前的那个例子