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 应用程序,它可以工作。但 pylint 给出“E0611:模块‘PyQt5.QtWidgets’中没有名称‘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]
(Ubuntu)我创建了一个
~/.pylintrc
文件并添加到那里
[MASTER]
extension-pkg-whitelist=PyQt5
比较方便。现在 pylint 甚至在我的 Visual Studio Code 编辑器中也应用了此配置。
或者在 VSCode 设置中:
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=PyQt5"
],
我在此页面找到了解决方案: 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
多是Qt5和Pylint结合造成的。因此,如果您使用的是 VsCode,请在工作区设置中更新它。
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=PyQt5"
],
如果您在 VS Code 中切换到新的 pylint 工具扩展,请将以下设置添加到您的 settings.json:
{
"pylint.args": [
"--extension-pkg-whitelist=PyQt5"
],
}
或者,您可以在 pyproject.toml 文件中进行设置:
[tool.pylint.main]
extension-pkg-whitelist = ["PyQt5"]