Sublime Pylint PyQt4模块没有成员

时间:2016-01-12 14:54:39

标签: pyqt4 sublimetext3 pylint

我使用Sublime-Text3并安装了SublimeLinter + SublimeLinter-pylint。
一切都按预期工作,除了pylint"扫描" PyQt4的

from PyQt4 import QtCore, QtGui

工作正常。 Pylint检测到QtCore和QtGui,但是如果

button = QtGui.QPushButton()
layout = QtGui.QVBoxLayout()

pylint设置红色下划线并告诉

  

PyQt4.QtGui没有" QPushButton"构件

有没有办法解决这个错误或者可能忽略SublimeLinter中的PyQt?

2 个答案:

答案 0 :(得分:2)

最新版本的pylint不再加载扩展模块(即编译后的代码不是用纯python编写的),除非它们是使用extension-pkg-whitelist选项列出的。这是因为加载扩展模块需要实际加载代码,这可能会引发不希望的副作用。

在您的情况下,pylint --extension-pkg-whitelist=PyQt4 <your module>(或使用配置文件中的等效条目)可以解决您的问题。

答案 1 :(得分:1)

找到解决方案,感谢 sthenault

一步一步。

  1. 生成rc文件
  2. pylint --generate-rcfile > pylint.rc

    1. 替换
    2. extension-pkg-whitelist=

      通过

      extension-pkg-whitelist=PyQt4

      1. 卓异
      2.   

        偏好设置 - &gt;包装设置 - &gt; SublimeLinter - &gt;设置 - 用户

        "pylint": {
                    [..another settings..]
                    "rcfile": "/path_to_rc/pylint.rc",
                }