【问题标题】:ImportError: PyQt4 is not installedImportError:未安装 PyQt4
【发布时间】:2017-01-30 19:41:32
【问题描述】:

我尝试使用py_entitymatching 框架在this dataset 中查找重复项。

它使用 PyQt4 来标记数据。 所以当我尝试执行标签命令时,我得到一个错误

虽然你可以看到 PyQt4 安装在我的机器上,我可以导入它。

关于如何解决它的任何想法?

谢谢


更新:

当我尝试导入 QtGui 时出现以下错误:

>>> from PyQt4 import QtGui
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: /home/oliver/anaconda3/lib/python3.5/site-packages/PyQt4/QtCore.so: undefined symbol: __cxa_throw_bad_array_new_length

下面提到的所有包都已安装

  • Qt4
  • SIP
  • PyQt4
  • PyQt5

还有其他想法吗?

【问题讨论】:

  • 试试from PyQt4 import QtGui。或者也许你必须安装Qt4
  • 嗨@Oblue,您的软件包安装不正确,因为您的错误显示。最好的办法是卸载所有内容并使用pip 重新安装

标签: python pyqt4 ipython-notebook python-import importerror


【解决方案1】:

看起来你的 PyQt 包没有安装,即使第一行说你的包已经安装。

尝试用 pip 安装它,看看它是否会做出改变

如果您使用的是python2

sudo pip install SIP

sudo pip install PyQt

如果您使用的是python3

sudo apt-get install python3-pyqt4

更新

from PyQt4 import QtGui Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: /home/oliver/anaconda3/lib/python3.5/site-packages/PyQt4/QtCore.so: undefined symbol: __cxa_throw_bad_array_new_length

看看你的错误,看来你的编译确实出错了。

一种可能的解决方案是卸载python,重新安装它并通过pip再次安装PyQt

【讨论】:

    【解决方案2】:

    我也遇到了同样的问题,需要安装64位版本的pyqt4。你可以安装它here。 一旦你正确安装它,我认为它会正常工作。

    【讨论】: