使用 python 进行程序编写时, 经常会使用第三方模块包. 这种包我们可以通过 python setup install 进行安装后, 通过 import XXX 或 from XXX import yyy 进行导入. 不过如果是自己遍写的依赖包, 又不想安装到 python 的相应目录, 可以放到本目录里进行 import 进行调用; 为了更清晰的理清程序之间的关系, 例如我们会把这种包放到 lib 目录再调用. 本篇就针对常见的模块调用方法汇总下.
一, 同级目录下的调有
程序结构如下:
- -- src
- |-- mod1.py
- |-- test1.py
若在程序 test1.py 中导入模块 mod1, 则直接使用
import mod1
或
from mod1 import *;
二, 调用子目录下的模块
程序结构如下:
- -- src
- |-- mod1.py
- |-- lib
- | |-- mod2.py
- |-- test1.py
这时看到 test1.py 和 lib 目录 (即 mod2.py 的父级目录), 如果想在程序 test1.py 中导入模块 mod2.py , 可以在 lib 件夹中建立空文件__init__.py 文件 (也可以在该文件中自定义输出模块接口), 然后使用:
from lib.mod2 import *
或
import lib.mod2.
三, 调用上级目录下的文件
程序结构如下:
- -- src
- |-- mod1.py
- |-- lib
- | |-- mod2.py
- |-- sub
- | |-- test2.py
这里想要实现 test2.py 调用 mod1.py 和 mod2.py , 做法是我们先跳到 src 目录下面, 直接可以调用 mod1, 然后在 lib 上当下建一个空文件__init__.py , 就可以像第二步调用子目录下的模块一样, 通过 import lib.mod2 进行调用了. 具体代码如下:
- ? https://www.jb51.net/article/78957.htm#
- import sys
- sys.path.append("..")
- import mod1
- import mod2.mod2
来源: http://www.bubuko.com/infodetail-2671516.html