PyQt5 模块 "QtQuick" 未安装

PyQt5 module "QtQuick" is not installed

我正在尝试使用 Windows 或 Linux 来运行一个基本的 PyQt5 QML 项目。我首先尝试了 Linux,但没有成功,现在正在尝试 Windows。我的问题是每当我尝试通过 python main.py 运行 它会抱怨 "module "QtQuick" is not installed" 和 "module "QtQuick.Window “未安装”。

我觉得这是指向 QT 安装位置的一些路径的简单指向,但不知道从这里去哪里。使用 Qt Widgets 可以,但不能使用 QML。

我的 main.py 文件是:

import sys

from PyQt5.QtQml import QQmlApplicationEngine
from PyQt5.QtGui import QGuiApplication

def _find_plugins():
    import PyQt5
    from os import path
    paths = [path.abspath(path.join(path.dirname(PyQt5.__file__), 'plugins'))]
    import PyQt5.QtCore
    PyQt5.QtCore.QCoreApplication.setLibraryPaths(paths)

if __name__ == '__main__':
    # _find_plugins()

    app = QGuiApplication(sys.argv)

    engine = QQmlApplicationEngine()

    engine.load('test.qml')

    sys.exit(app.exec_())

我的 test.qml 文件是:

import QtQuick 2.2
import QtQuick.Window 2.1

ApplicationWindow {
    visible: true
    width: 640
    height: 480
    minimumWidth: 400
    minimumHeight: 300
}

原来我需要添加以下环境变量:

QML2_IMPORT_PATH

我的值是:

C:\Python35\Lib\site-packages\PyQt5\qml

我在 Linux 中遇到了这个问题,经过反复试验,我发现通过使用以下命令删除 qt 和 pyqt5:

conda remove -c conda-forge pyside2 pyqt 

然后用 pip 安装这些包,我的问题就解决了! 通过使用 pip install pyqt5>=5.11

p.s: 我正在使用: ubuntu 20.04, miniconda, python 3.7, pyqt5>=5.11