import要领引入模块详解
在python用import可能from…import可能from…import…as…来导入相应的模块,浸染和利用要领与C语言的include头文件雷同。其实就是引入某些成熟的函数库和成熟的要领,制止反复造轮子,提高开拓速度。
python的import要领可以引入系统的模块,也可以引入我们本身写好的共用模块,这点和php很是相似,可是它们的详细细节还不是很一样。因为php是在引入的时候指明引入文件的详细路径,而python中不可以或许写文件路径举办引入。
下面总结一下import的几种环境:
python包括子目次中的模块要领较量简朴,要害是可以或许在sys.path内里找到通向模块文件的路径。
下面将详细先容几种常用环境:
(1)主措施与模块措施在同一目次下:
如下面措施布局:
`– src
|– mod1.py
`– test1.py
若在措施test1.py中导入模块mod1, 则直接利用import mod1或from mod1 import *;
(2)主措施地址目次是模块地址目次的父(或祖辈)目次
如下面措施布局:
`– src
|– mod1.py
|– mod2
| `– mod2.py
`– test1.py
若在措施test1.py中导入模块mod2, 需要在mod2文件夹中成立空文件__init__.py文件(也可以在该文件中自界说输出模块接口); 然后利用 from mod2.mod2 import * 或import mod2.mod2.
(3)主措施导入上层目次中模块或其他目次(平级)下的模块
如下面措施布局:
`– src
|– mod1.py
|– mod2
| `– mod2.py
|– sub
| `– test2.py
`– test1.py
若在措施test2.py中导入模块mod1和mod2。首先需要在mod2下成立__init__.py文件(同(2)),src下不必成立该文件。然后挪用方法如下:
下面措施执行方法均在措施文件地址目次下执行,如test2.py是在cd sub;之后执行python test2.py
而test1.py是在cd src;之后执行python test1.py; 不担保在src目次下执行python sub/test2.py乐成。
import sys
sys.path.append("..")
import mod1
import mod2.mod2