Python 3.x Pydev显示未解析的导入,但脚本是否运行?

Python 3.x Pydev显示未解析的导入,但脚本是否运行?,python-3.x,pydev,Python 3.x,Pydev,我正在使用PyDev 我正在尝试将我的项目类组织成包 e、 g.在一个文件夹中,我有一个模块位于/libraries/fund\u price\u library.py 在项目的另一个文件中,我尝试使用以下方式导入: from libraries.fund_price_library import FundPriceLibrary as fpl PyDev将“FundPriceLibrary作为fpl”下划线为红色,并将其标记为以下错误: unresolved import fpl 然而,我

我正在使用PyDev

我正在尝试将我的项目类组织成包

e、 g.在一个文件夹中,我有一个模块位于/libraries/fund\u price\u library.py

在项目的另一个文件中,我尝试使用以下方式导入:

from libraries.fund_price_library import FundPriceLibrary as fpl
PyDev将“FundPriceLibrary作为fpl”下划线为红色,并将其标记为以下错误:

unresolved import fpl
然而,我的脚本工作得非常好,所以我相信我正确地完成了导入

我的项目中有很多类似的错误,看起来很混乱。但是,我的python代码可以正常工作,因此我假设我导入的是正确的


如何抑制这些错误?

快速而肮脏的解决方案:

也许您可以告诉pydev在代码中使用标记unsolvedImport来忽略导入错误。 有关此主题的讨论,请参阅

PS如果您在eclipse中使用pydev,则ctrl+1应该建议此解决方案。

可能是您问题的解决方案

在pydev项目的属性中,有一个名为“pydev-PYTHONPATH”的窗格,其中有一个子窗格名为“外部库”。您可以使用该窗格将源文件夹(具有init.py的任何文件夹)添加到路径。然后,您的项目代码将能够从这些源文件夹导入模块


可能只是PyDev不知道在哪里可以找到文件。

我也有同样的问题。解决方案是(我有Eclipse4.6w/Pydev5.6):

执行此操作:
addsourcefolder
(按钮)并添加您的(当前)源目录,在我的示例中,它是
src
子目录,因此窗口中显示新项目:
/${PROJECT\u DIR\u NAME}/src

现在我有了这个:

/${PROJECT_DIR_NAME}
/${PROJECT_DIR_NAME}/src
我的PyDev现在很高兴:)

Python3有这么多的
\uuuu init\uuuuuu.py
子包中的文件不是必需的。然而,PyDev似乎仍然需要它们


我的解决方案是在子包中添加空的
\uuuu init\uuuuy.py
文件。

我在一个新项目中遇到了这个问题,出现了“未解决的导入”错误,导入的符号尚未实际使用。
只有当eclipse“project”名称和底层python“package”名称相同时,才会出现问题。当我将eclipse项目名称更改为其他名称时,错误消息消失了(似乎某个地方可能有bug)


顺便说一句:使用Eclipse 2018-12(4.10.0)和PyDev版本7.1.0.201902031515,奇怪的是,它可以工作,尽管我的文件在我当前的项目中,而不是在一个外部库中。我猜PyDev设置中的路径有些混乱-因此PyDev找不到库,即使Python可以。(您也可以通过单击复选标记来接受我的答案)Python3具有隐式名称空间包和init文件不是必需的。我不知道它是否相关,但我的项目不包含init文件,不幸的是,这并没有解决我的问题。看看我的答案吧。尽管在这个问题和其他类似的问题上列出了许多更奇特、更彻底的解决方案:这个简单的解决方案对我来说是有效的。这个有效。我发现我必须重新启动Eclipse才能让它运行effect@S.N.文件>重新启动即可!
/${PROJECT_DIR_NAME}
/${PROJECT_DIR_NAME}/src