pylint找不到QWidget和QApplication

时间:2017-09-21 07:17:58

标签: python pyqt pyqt5 pylint

import sys
from PyQt5.QtWidgets import (QApplication, QWidget)
app = QApplication(sys.argv)
window = QWidget()
window.setGeometry(50, 50, 500, 300)
window.setWindowTitle('Hello, world')
window.show()
sys.exit(app.exec_())

我刚开始学习pyqt5。我写了这个hello world app,它有效。但是pylint在模块“PyQt5.QtWidgets”中给出了“E0611:No name'QWidget'”,对于QApplication也是如此。它是pylint中的某种错误吗?

pylint --version
No config file found, using default configuration
pylint 1.7.2, 
astroid 1.5.3
Python 3.5.2 (default, Aug 18 2017, 17:48:00) 
[GCC 5.4.0 20160609]

3 个答案:

答案 0 :(得分:10)

(Ubuntu)我创建了一个~/.pylintrc文件并添加了

[MASTER]
extension-pkg-whitelist=PyQt5

更方便。现在,即使在我的Visual Studio代码编辑器中,pylint仍然应用此配置。

或者在VSCode设置中:

"python.linting.pylintArgs": [
    "--extension-pkg-whitelist=PyQt5"
],

答案 1 :(得分:2)

我在此页面中找到了解决方案: http://python.6.x6.nabble.com/PyQt-and-pylint-with-quot-no-name-in-module-quot-td5217888.html

所以在终端中使用它(对于main.py):

pylint main.py --extension-pkg-whitelist=PyQt5

答案 2 :(得分:0)

主要由Qt5和Pylint的组合引起。因此,如果您使用的是VsCode,请在工作区设置中对其进行更新。

"python.linting.pylintArgs": [
    "--extension-pkg-whitelist=PyQt5"
],