问题来源
在训练yolo3模型时,遇到python模块导入问题,记录如下。
错误提示
我想在invoke.py中导入所在目录同级的目录下的DAYDAY模块,出现报错:No module named ‘DAYDAY’。
目录结构
|–file1
||–DAYDAY.py
|–file2
||–invoke.py
原因
在python默认path中没有file1的路径,导致import失败
解决办法
在invoke.py中,添加如下代码,path中增加file路径。按以下方式调用,不再报错。
import sys
sys.path.append(r'D:/Testcodee/Invoke test/file1')
from DAYDAY import dayUP
import DAYDAY
b = dayUP(0.01)
print(b)
我的问题
我在anaconda虚拟环境中添加了与自定义的模块名字相同的模块,导致虽然使用了上面的方法,但是还是没能解决。后面,把同名库删了,就好了。
参考链接:
Python 3.x | 史上最详解的 导入(import).
Python中的绝对导入和相对导入,解决了我很多困惑,区别在这里!.
Python如何从任何文件夹导入模块.