同级目录的调用
程序结构如下
----src |--model1.py !--test.py 若test1想要调用model1中的模块,直接import就行了
调用子目录模块
程序结构如下
-- src |-- mod1.py |-- lib |-- mod2.py |-- test1.py 这时看到test1.py和lib目录(即mod2.py的父级目录),如果想在程序test1.py中导入模块mod2.py ,可以在lib件夹中建立空文件__init__.py文件(也可以在该文件中自定义输出模块接口),然后在文件test1.py使用 from lib.mod2 import * 或 import lib.mod2.
调用上级目录文件
程序结构如下d
--src |-- model1.py |-- lib |-- model2.py |-- sub |-- test2.py 这是若test2.py想要调用mode2.py文件,则可以在在src,lib,sub目录下新建__init__.py文件,然后直接使用绝对导入就行,在test2.py可以这样写 from src.lib import model2
conclusion
官网上给出一种很方便的方式
项目结构如下
sound/ Top-level package
__init__.py Initialize the sound package
formats/ Subpackage for file format conversions
__init__.py
wavread.py
wavwrite.py
aiffread.py
aiffwrite.py
auread.py
auwrite.py
...
effects/ Subpackage for sound effects
__init__.py
echo.py
surround.py
reverse.py
...
filters/ Subpackage for filters
__init__.py
equalizer.py
vocoder.py
karaoke.py
...
直接使用绝对导入,比如说filters下的vocoder想要调用effects下的echo,可以直接在vocoder.py这样写
from sound.effects import echo