针对自己创建的包的ModuleNotFoundError: No module named ‘models‘问题

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文件夹。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值