[英]Module not found issue
我对从终端运行代码有点陌生。 我正在通过运行以下test_blbmktdata.py
从终端运行一个名为test_blbmktdata.py
的测试模块:
python -m unittest test_blbmktdata.py
并出现错误:
File "C:\Users\stacey\Documents\MERLIN\MERLIN - WORKING\dao_all\dao\iotools\tests\test_blbmktdata.py", line 3, in <module>
from dao.iotools.blbmktdata import *
ModuleNotFoundError: No module named 'dao'
文件夹dao
确实退出:
C:\Users\stacey\Documents\MERLIN\MERLIN - WORKING\dao_all\dao\iotools
请参阅下面的模块开始部分(问题所在)。
import unittest
import os.path
from dao.iotools.blbmktdata import *
class TestBlbMktData(unittest.TestCase):
staticName='StaticInstrumentData.csv'
如果我从终端运行代码,是否需要更改引用来自不同文件夹的导入的方式?
谢谢
python不知道在哪里寻找dao模型
在导入之前添加以下行
import sys
sys.path.append(<path to prj root directory>)
您还需要在dao的每个目录中都有一个init .py文件(空文件),以便python可以将其识别为模块
请检查pythonpath环境变量是否设置正确。 你可以参考这个。 如何在Windows 7中添加到pythonpath中?
除了shahaf的答案外,还有必要查看有关模块分辨率的官方文档: https ://docs.python.org/3/tutorial/modules.html#the-module-search-path
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.