【问题标题】:Eclipse PyDev import errorEclipse PyDev 导入错误
【发布时间】:2015-04-09 05:01:28
【问题描述】:

我正在尝试在 PyDev 中使用 pyqtgraph。我可以使用以下方法在应用程序中显示绘图窗口:

import pyqtgraph as pg

但是,当我尝试使用以下方式在 PyQt 应用程序中嵌入小部件时:

from pyqtgraph import PlotWidget

我收到 ImportError: cannot import name 'PlotWidget'

我正在使用安装在站点包中的带有 python3 和 pyqtgraph 的 virtualenv。 python解释库包括pyqtgraph所在的python3站点包。

我在 PyDev 中尝试的完全相同的代码在 PyCharm 中使用相同的 virtualenv 运行良好。

我将文本 pyqtgraph 添加到 window-preferences-PyDev-Interpreters-Forced Builtins。

我尝试了 PyDev-PYTHONPATH 设置对话框上的“强制恢复内部信息”按钮。

我还尝试了项目 RMB-PyDev-Remove Project Config。再次制作成PyDev项目,File-Restart,Close project,Open Project。

我尝试将 site-packages/pyqtgraph 文件夹添加到 PYTHONPATH 中的外部库。

另外我再添加到代码中:

import sys
sys.path.append("/work/.virtualenvs/python3virt/lib/python3.4/site-packages/pyqtgraph")

在如下所示的导入块之前。我可以看到 /work/.virtualenvs/python3virt/lib/python3.4/site-packages/pyqtgraph 显然在系统路径上,但收到错误 ImportError: No module named 'pyqtgraph.widgets'

奇怪的是,有时在 import 语句中将鼠标悬停在 pyqtgraph 上时按 F3 会转到源代码,而其他时候则不会。例如在以下代码中,F3 仅适用于第二个 pyqtgraph 导入:

import pyqtgraph as pg
try:
    from pyqtgraph import PlotWidget
except ImportError:
    import sys
    print ('Executable:', sys.executable)
    print ('\n'.join(sorted(sys.path)))
    raise

有人对如何让 PyDev 识别 pyqtgraph 的内部有任何想法吗?

【问题讨论】:

标签: python eclipse pydev


【解决方案1】:

RMB上的项目,选择PyDev - PYTHONPATH。选择 External Libraries,添加源焊料然后选择本地 pyqtgraph-0.n.n/pyqtgraph 文件夹

【讨论】:

    【解决方案2】:

    实际上,如果您只是执行了“pip install pyqtgraph”并将其安装在解释器中,那么一切都应该可以顺利进行...如果您确实希望将它与站点包分开,那么您可以真正将其添加为外部库源文件夹,但在这种情况下要添加的正确目录是应该在 PYTHONPATH 中的目录(即:只有“pyqtgraph-0.nn”而不是 pyqtgraph-0.nn/pyqtgraph)。

    实际上,从您的安装开始,您可能不应该更改任何内容,因为 /work/.virtualenvs/python3virt/lib/python3.4/site-packages 已经在 PYTHONPATH 中 - 并且 /work/.virtualenvs/python3virt/ lib/python3.4/site-packages/pyqtgraph 不应单独添加到 PYTHONPATH。

    此外,您不应在运行时将其添加到 sys.path,因为将其添加到外部源文件夹或将其放入站点包就足够了。

    【讨论】:

      猜你喜欢
      • 2011-09-30
      • 1970-01-01
      • 2012-01-29
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 2010-12-26
      • 2011-12-19
      • 1970-01-01
      相关资源
      最近更新 更多