在OSX 10.9上,我安装了Qt5。后来我安装了Ipython,sip和PyQt5都是从源代码构建的。现在问题是:当我尝试运行ipython qtconsole
时,我有一堆与此目录(及其子文件夹)中的文件相关的错误
/Library/Python/2.7/site-packages/IPython/
接着是
ImportError:
Could not load requested Qt binding. Please ensure that
PyQt4 >= 4.7 or PySide >= 1.0.3 is available,
and only one is imported per session.
Currently-imported Qt library: None
PyQt4 installed: False
PySide >= 1.0.3 installed: False
Tried to load: ['pyside', 'pyqt']
我认为问题是我有PyQt5而不是PyQt4。这是问题还是我错过了其他一些事情?
无论如何我可以使用PyQt5获得qtconsole吗?如果不是,最简单的方法是什么? (最好是一种不涉及在一台机器上安装两个版本的Qt库的方法)。
为简洁起见,我跳过了发布完整的错误消息。如果我应该通过更好地了解情况来加入它们,请告诉我。
答案 0 :(得分:3)
问题可能与您的python路径有关。
我几乎遇到了同样的问题。我使用Homebrew
安装了PyQt,我得到了相同的错误消息。最后解决问题的是将以下行添加到我的.bash_profile
:
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
由于我自己是初学者,我无法帮助你,但我希望这能解决问题。
答案 1 :(得分:2)
我知道这很老了,但我最近在设置PyQt5时遇到了麻烦。
问题是PyQt5
会安装,但有些子模块不会安装。例如,尝试
import PyQt5 #works
from PyQt5 import * # might fail
如果第二个命令失败,那么PyQt5设置就会出现问题,你需要关注它。
具体来说,ipython + qt将尝试导入以下内容
from PyQt5 import QtCore, QtSvg, QtWidgets, QtGui
如果这些子模块中的任何一个被破坏/丢失,qt控制台启动将悄然失败。
对我来说,事实证明PyQt5 installer未能进行QtSvg
绑定,ipython尝试从PyQt5加载。运行configure.py
时,使用-w
选项,您将看到构建的所有详细信息,从而可以确定安装失败的位置。
在我的情况下,有点谷歌搜索,我发现我错过了QtSvg lib,可以从回购处轻松拉入。
答案 2 :(得分:1)
设置环境变量QT_API = pyqt5为我解决了同样的问题。
答案 3 :(得分:1)
我遇到了同样的问题,但最近的brew
ipython
ImportError
包括PyQt5
PyQt4
以及PySide
})。因此,如果它之前不能与PyQt5一起使用,它现在就可以了。
将PYTHONPATH
添加到.bash_profile
为我修复,即使在我的virtualenv
中也是如此。 (我不赞成对oxtay的答案进行投票或评论,这样会更合适......)