your_project/
├── vis_tools/
│ └── demo_img_with_mmdet.py
└── models/
├── __init__.py # (optional, but recommended)
└── some_file.py # contains build_posenet
在复现代码时时常遇到module not found的问题,而import 的包又并不是通过下载得到的,因此显得十分棘手。
而运行script时,python的逻辑是会从sys.path()当中去寻找所需要的包。而自己编写的包显然不能通过这种方法找到。因此,就需要使用以下方法:
import sys
import os
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
from models import build_posenet #这个build_posenet就是内置在some_file.py内的一个函数
大家可以自行理解一下如何灵活运用,os.path.dirname。在示例当中就是将vis_tools的父文件夹your_project也加入进sys.path()里面。如此才能够寻找到在your_project文件夹下的models文件夹。