导入与当前目录同级的其他目录下的包
在dayaset_contra.py文件下想导入labelmaps.py中的包
sys.path.append("..") from utils.labelmaps import get_vocabulary, labels2strs
而且要求utils下必须有__init__.py文件
而且必须是
进入到dataset目录下执行python dataset_contra.py
因为如果使用python lib/dataset/dataset_contra.py 这样执行的话,是不能用相对路径表示方法的
如果没有精确到utils下的labelsmaps文件,想from utils import get_vocabulary, labels2strs的话,那就要在utils下的__init__.py里面定义好了才行
导入上级目录下的某个py文件
这样就不需要有__init__.py了
像我在上层目录下的logger_self_code.py这样就可以导入成功
sys.path.append('..') from logger_self_code import Logger
比如想在test.py中导入logger_self_code.py
导入同级目录
. └── src/ ├── main.py └── util.py
在main.py中,
from util import doSomethingCool 或 from .util import doSomethingCool
这么写都是不行的, 因为util只是个模块,不是个包
只能写
import util
如果非想上面那样的话,就要改成
. └── src/ ├── main.py └── utils/ ├── __init__.py └── util.py