Pydev显示未解析的导入,但脚本运行?

Gin*_*ger 14 pydev python-3.x

我正在使用PyDev.

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

例如,在文件夹中,我在/libraries/fund_price_library.py上有一个模块

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

from libraries.fund_price_library import FundPriceLibrary as fpl
Run Code Online (Sandbox Code Playgroud)

PyDev用红色标出"FundPriceLibrary as fpl",用这个错误标记它:

unresolved import fpl
Run Code Online (Sandbox Code Playgroud)

但是,我的脚本工作得很好,所以我相信我正在进行正确的导入.

我的项目中有很多类似的错误,看起来很乱.但是,我的python代码工作,所以我假设我正确导入.

如何抑制这些错误?

Way*_*ner 11

这个问题可能会解决您的问题.

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

可能就是PyDev不知道在哪里找到文件.


mar*_*voj 5

我遇到过同样的问题。解决方案是(我有 Eclipse 4.6 w/ Pydev 5.6):

Project > Properties > PyDev - PYTHONPATH > tab Source Folders
Run Code Online (Sandbox Code Playgroud)

这样做:(Add source folder按钮)并添加您的(当前)源目录,在我的情况下它是src子目录,因此新项目出现在窗口中: /${PROJECT_DIR_NAME}/src

所以现在我有这个:

/${PROJECT_DIR_NAME}
/${PROJECT_DIR_NAME}/src
Run Code Online (Sandbox Code Playgroud)

我的 PyDev 现在很开心 :)


小智 0

快速而肮脏的解决方案:

也许您可以通过在代码中使用标记 UnresolvedImport 告诉 pydev 忽略导入错误。请参阅如何-i-make-the-pydev-editor-selectively-ignore-errors有关该主题的讨论,

PS 如果你在 eclipse 中使用 pydev,ctrl+1 应该会建议这个解决方案。