【发布时间】:2020-07-23 22:00:48
【问题描述】:
我正在尝试将以下内容安装到 Ubuntu 14.04.6 系统上:
-
Qt5
-
Python 3.6
-
PyQt5
-
Pyudev(0.20.0 或更高版本)
目前,PyQt5 是问题所在。当我运行 python 脚本时:
python3.6 myscript.py
myscript.py 在哪里:
import sys
import pyudev.pyqt5
from PyQt5 import QtCore, QtGui
我收到一个导入错误 - “没有名为 QtCore 的模块”。
所以它正在寻找PyQt5包,但它找不到QtCore或QtGui等。
奇怪的是,当我运行以下命令时,我没有收到 QtCore 导入错误,而是收到了 pyudev.pyqt5 导入错误。
python3 myscript.py
当我执行“python3 --version”时,“python3”正在引用python3.4。
本质上,PyQt5 只能被 python 3.4 看到,而 pyudev 只能被 python 3.6 看到。
这就是我根据之前的帖子安装所有东西的方式:Getting import error with sub modules of PyQt5 我从其他帖子中更改了 pyqt5 安装行,因为我收到了错误:
ERROR: Could not find a version that satisfies the requirement PyQt5 (from versions: none)
ERROR: No matching distribution found PyQt5
安装过程:
#install qt5
sudo apt update
sudo apt install build-essential
sudo apt install qtcreator
sudo apt install qt5-default
#install pip
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
sudo apt-get install curl
curl https://bootstrap.pypa.io/get-pip.py
sudo python3.6 -m pip install --upgrade pip
#install pyqt5
sudo apt install python3-pyqt5
sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev libfontconfig1
#install pyudev
pip install pyudev
我的核心问题和问题: 为什么pyudev和pyqt5不能同时导入python3.6脚本?
任何帮助将不胜感激。如果我做错了什么,请告诉我。我是 Ubuntu 的新手,并试图了解一切是如何工作的。
【问题讨论】:
-
提示:Python 包永远不会安装到“Python”中。每个包都安装了一个 Python 版本。如果您要使用 2 个 Python 和一组相同或相似的包,您必须安装 2 组包,每个 Python 一个。
-
建议:始终使用 Python 虚拟环境。在虚拟环境之外安装的唯一软件包是
virtualenv。也可以考虑使用conda。 -
@phd 那么如何为特定的 python 版本安装包呢?这样做的方法是什么?我只需要 pyqt5 和 pyudev 就可以在 python3.6 上工作。
-
pip3.6 install或python3.6 -m pip install。创建并激活虚拟环境(使用virtualenv -p python3.6 venv; . venv/bin/activate);那么pip install或python -m pip install也可以使用。
标签: python python-3.x pip pyqt5 ubuntu-14.04