pylint错误在python3.2中运行正常但在python3.3中失败

时间:2013-05-13 14:58:49

标签: python qt python-3.x pyqt pylint

运行Ubuntu QQ:

我有一个使用PyQt的Python项目。在几个地方我导入了QtCore和QtGui:

from PyQt4 import QtCore, QtGui

到现在为止,我一直在使用python3.2.x(3?)

当我针对此类文件运行 pylint 时,它会报告错误:

"Line 1 E: No name 'QtCore' in module 'PyQt4' 

但无论如何应用程序运行良好。

现在我安装了Python 3.3(在相同路径上:.. / usr / bin /)并将我的项目配置为使用python3.3并且python失败:

builtins.ImportError: cannot import name QtCore
File "/myfile.py", line 1, in <module>
from PyQt4 import QtCore

发生了什么事?使用python3.2,pylint报告错误,Python没有问题,但是python3.3失败了,在python3.2中报告了错误pylint?

1 个答案:

答案 0 :(得分:1)

关于PyQT导入的“错误”pylint报告是因为由于PyQT中有一些C ++或一些C,因此pylint无法轻松自动地内省PyQt模块并确定您的代码是否正确导入了该第三方模块的位。

为了解决这个问题,有一个名为pylint-brains的pylint插件项目,可以指定内省特定模块(或伪造内省)的方法。如果有一个贡献可以删除这个非常常见的导入的“E”,那将是很好的。

对于ImportError,正如评论中所讨论的,我相信要么你必须为这个版本的python重新安装PyQt,要么PyQt还不兼容3.3,或者pythonpath中的某些内容是错误的。