Pycharm导入Pyqt4和Pyqt5错误
我在使用PyQt的时候遇到了一些麻烦。我通过Homebrew安装了PyQt4和PyQt5,打算在一个特定的项目中使用PyQt4。但是,我在让它正常工作时遇到了一些奇怪的问题。
在一个模块中,我们称它为A,我使用了这些导入:
from OpenGL.GL import *
from OpenGL.GLU import *
from PyQt4 import QtGui
from PyQt4.QtOpenGL import *
现在,PyQt4的部分显示为红色下划线,提示“未解析的引用PyQt4”。不过,这段代码还是能运行。如果我把它改成PyQt5,就没有下划线了:
from OpenGL.GL import *
from OpenGL.GLU import *
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtOpenGL import *
但是,当我运行时却出现了这个错误:
Traceback (most recent call last):
File "/Users/Jordan/PycharmProjects/SimpleCAD/QGLWindow.py", line 6, in <module>
from PyQt5 import QtCore, QtGui, QtWidgets
ImportError: No module named PyQt5
现在,我在程序中还有另一个窗口,这部分是在另一个模块B中处理的。那些导入看起来是这样的:
import sys
from PyQt4 import QtGui
当我运行这段代码时,我得到了这个错误:
Traceback (most recent call last):
File "/Users/Jordan/PycharmProjects/SimpleCAD/QTMainWindow.py", line 2, in <module>
from PyQt4 import QtGui
ImportError: No module named 'PyQt4'
那么,我的导入到底怎么了?为什么PyQt4在一个模块中能用,而在另一个模块中却不行?而且,为什么在一个模块中能正常工作的PyQt4导入会有警告,而不工作的PyQt5导入却没有警告呢?提前谢谢大家的帮助。
3 个回答
0
我之前也遇到过同样的问题,使用的是Python 3.5.1和Pycharm 2016.1.2。解决这个问题的方法是额外安装一个叫做python3-qtpy的包,所以:
apt-get install python3-qtpy
之后,我在Pycharm中就不再收到关于PyQt4的未解决引用的错误了。
0
这是因为你需要把你的项目文件夹设置为源代码根目录。可以按照以下步骤操作:
- 右键点击你的项目文件夹
- 选择“标记目录为”,然后点击“源代码根目录”。
想了解更多细节,可以查看这个链接: PyCharm中的未解决引用问题
4