ModuleNotFoundError: No module named <module-name>

ModuleNotFoundError: No module named <module-name>

我的项目目录中有一个名为 ImgUtils 的包,它看起来像这样:

├── myproject
│   ├── test.py
│   ├── Analyzer
│      ├── __init__.py
│      ├── utils.py
│      └── ImgUtils
│          ├── __init__.py
│          ├── ImgUtils.pyd
│          ├── ImgUtils.so
│          └── a bunch of *.dll files

ImgUtils.pyd 导出一个名为 PyImageUtils 的 class。

\ utils.py
from ImgUtils.ImgUtils import PyImageUtils

def my_test_function():
    a = PyImageUtils.analyze()
    return a
\ test.py
from Analyzer import utils

print(utils.my_test_function())

utils.py 中的导入工作正常,但如果我 运行 test.py,我得到 ModuleNotFoundError: No module named 'PyImgUtils'.

我正在使用 Python 3.10。 ImgUtils.pyd 的路径在 sys.path 列表中。

更新:我能够通过像这样导入 ImgUtils 来解决这个问题:

\ utils.py

from myproject.Analyzer.ImgUtils.ImgUtils import PyImageUtils

我使用的是 Django,this 答案解释了解决方案。