Python 3.8.3中的ModuleNotFoundError

钙蛋白11

我在Python中导入模块时遇到问题。我正在与PyQt进行项目,并且试图对其进行重构和重组。

层次结构是下一个:

./main.py
./logic/__init__.py
./logic/transforms.py
./logic/hopfield.py
./gui/__init__.py
./gui/interface.py
./gui/mplwidget.py
./img

错误:

Traceback (most recent call last):
  File "...\main.py", line 5, in <module>
    from gui.interface import Ui_MainWindow
  File ...\gui\interface.py", line 215, in <module>
    from mplwidget import MplWidget
ModuleNotFoundError: No module named 'mplwidget'

文件interface.py

class Ui_MainWindow(object):
  .
  .
  .

from mplwidget import MplWidget

文件main.py

import sys
import matplotlib
import numpy as np

from gui.interface import Ui_MainWindow
from gui.weightMatrix import Ui_Dialog
from gui.table import TableModel

from logic.hopfield import learn, searchPattern
from logic.transforms import transformVector, transformVectors

from PyQt5 import QtCore, QtGui, QtWidgets

class Actions(Ui_MainWindow):
    def __init__(self):
         .
         .
         .

我不明白为什么它不起作用,因为如果在模块内部运行接口文件,它可以mplwidget作为模块正常工作。

里尔·科恩(Lior Cohen)

File ... \ gui \ interface.py“,第215行,在

从mplwidget导入MplWidget

interface.py应该有

绝对导入: from gui.mplwidget import MplWidget

要么

相对进口: from .mplwidget import MplWidget

此外,一个很棒的博客介绍了两种不同的含义

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章