【问题标题】:Importing packages works but still get errors?导入包有效但仍然出错?
【发布时间】:2019-08-21 08:58:39
【问题描述】:

我有一个符合 MVC 模型的 Python 应用程序,所以我有一个名为 Controller, Model and View 的文件夹。在每个文件夹中,我都有相互导入的 Python 文件。它似乎可以工作,但是当您将光标悬停在导入上时,我看到了 "Unable to import XXXX" 错误,我不确定这是为什么。

我在每个文件夹中都有一个空的__init__ 文件,并已将路径添加到系统路径。

我的应用程序的目录是这样的:

    Desktop/Application--¬
                          Controller--¬
                                       MainController.py
                                       GraphEngine.py
                                       APIMethods.py
                          Model-------¬
                                       MainModel.py
                                       DatabaseAccess.py
                          View

我使用import sys sys.path.append('C:/Users/XXXX/Desktop/Data-Processing-Engine-Sorted/Controller') 设置系统路径,然后使用import MainController 实际访问文件。

这似乎工作正常。另一个文件找到 MainController 并毫无问题地使用它的方法,但是在 IDE 中我无法摆脱 "Unable to import MainController" 错误。我真的很困惑为什么。

提前感谢您的帮助。

【问题讨论】:

  • 尝试添加一个指向该目录的 PYTHONPATH 环境变量。你还在IDE中使用虚拟环境吗?
  • 啊,我现在不是没有管理员权限的工作计算机,所以我无法将它们添加到我的路径中,不,我没有使用虚拟环境。我是 Python 新手,所以我对虚拟环境一无所知。
  • 您使用的是哪个 IDE?
  • 我正在使用 VS Code

标签: python import package sys


【解决方案1】:

我发现了问题!很简单,也很尴尬……

当调用其中一种方法时,我只调用了模块而不是类,例如:

controller = MainController() 会在

时返回错误

controller = MainController.MainController() 将创建我的类的实例

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多