Python pip3未安装目标模块版本

Python pip3未安装目标模块版本,python,pip,pyqt5,ubuntu-18.04,Python,Pip,Pyqt5,Ubuntu 18.04,在UbuntuStudio 18.04上使用Python3.6.9和PIP9.0.1,我试图将PyQt5模块从5.10.1版降级到5.9.2版 安装似乎已顺利完成,但pip3确认5.10.1已成功安装: pip3 install --no-cache-dir 'PyQt5==5.9.2' 输出: Collecting PyQt5==5.9.2 Downloading https://files.pythonhosted.org/packages/3a/c6/26270f5550f00920

在UbuntuStudio 18.04上使用Python3.6.9和PIP9.0.1,我试图将PyQt5模块从5.10.1版降级到5.9.2版

安装似乎已顺利完成,但pip3确认5.10.1已成功安装:

pip3 install --no-cache-dir 'PyQt5==5.9.2'
输出:

Collecting PyQt5==5.9.2
  Downloading https://files.pythonhosted.org/packages/3a/c6/26270f5550f00920045c2f0b222a7d03d7a64382825c68bf0bb1a51d854c/PyQt5-5.9.2-5.9.3-cp35.cp36.cp37-abi3-manylinux1_x86_64.whl (105.3MB)
    100% |████████████████████████████████| 105.3MB 11.0MB/s 
Collecting sip<4.20,>=4.19.4 (from PyQt5==5.9.2)
  Downloading https://files.pythonhosted.org/packages/8a/ea/d317ce5696dda4df7c156cd60447cda22833b38106c98250eae1451f03ec/sip-4.19.8-cp36-cp36m-manylinux1_x86_64.whl (66kB)
    100% |████████████████████████████████| 71kB 4.2MB/s 
Installing collected packages: sip, PyQt5
Successfully installed PyQt5-5.10.1 sip-4.19.8
Name: PyQt5
Version: 5.10.1
Summary: Python bindings for the Qt cross platform UI and application toolkit
Home-page: https://www.riverbankcomputing.com/software/pyqt/
Author: Riverbank Computing Limited
Author-email: info@riverbankcomputing.com
License: GPL v3
Location: /home/stragu/.local/lib/python3.6/site-packages
Requires: sip
输出:

Collecting PyQt5==5.9.2
  Downloading https://files.pythonhosted.org/packages/3a/c6/26270f5550f00920045c2f0b222a7d03d7a64382825c68bf0bb1a51d854c/PyQt5-5.9.2-5.9.3-cp35.cp36.cp37-abi3-manylinux1_x86_64.whl (105.3MB)
    100% |████████████████████████████████| 105.3MB 11.0MB/s 
Collecting sip<4.20,>=4.19.4 (from PyQt5==5.9.2)
  Downloading https://files.pythonhosted.org/packages/8a/ea/d317ce5696dda4df7c156cd60447cda22833b38106c98250eae1451f03ec/sip-4.19.8-cp36-cp36m-manylinux1_x86_64.whl (66kB)
    100% |████████████████████████████████| 71kB 4.2MB/s 
Installing collected packages: sip, PyQt5
Successfully installed PyQt5-5.10.1 sip-4.19.8
Name: PyQt5
Version: 5.10.1
Summary: Python bindings for the Qt cross platform UI and application toolkit
Home-page: https://www.riverbankcomputing.com/software/pyqt/
Author: Riverbank Computing Limited
Author-email: info@riverbankcomputing.com
License: GPL v3
Location: /home/stragu/.local/lib/python3.6/site-packages
Requires: sip
我还尝试卸载并再次安装它,但最终安装了5.10版,即未安装5.10.1版。就好像它至少强制5.10版一样

但是,当我在Python3内核中执行以下操作时:

从PyQt5.Qt导入PYQT_版本_STR printPyQt版本:,PYQT_版本_STR 我发现它显然在使用5.9.2版

知道这里发生了什么吗?

您正在使用系统的Python。该模块也安装在Apt的系统范围内。Pip行为的奇怪之处在于Debian补丁

我盲目地猜测了第一个,其中显示了您看到的版本号5.10.1

检查“从可用”中的修补程序将显示set_user_default.patch中的以下相关更改:

在非虚拟环境中以普通用户身份运行时,默认为 -用户和-忽略已安装

我想这是为了修复UX for pip安装在这里,与之相比

但是,修补程序仅将此应用于install命令

因此,您将PyQt5-5.9.2安装到用户站点,而pip3 show在系统站点向您显示软件包,您需要运行pip3 list-user才能看到后者


我不知道为什么pip3安装在最后显示了一个错误的版本,但我猜这行代码是由驱动pip3显示的相同代码生成的。

在这个安装中,默认的pip3版本9.0.1似乎有问题,它总是在安装结束时报告,或者在列出带有pip3的模块版本时,列出该模块有史以来安装的最高版本

我通过以下方式升级了pip3:

python3-mpip安装-升级pip
现在它可以按预期工作,报告用户要求的正确模块版本号,该版本号与从Python3内核中查找相关模块的版本号时检索到的任何内容相匹配。

pip3确认成功安装了5.9.1,但输出不表明安装了5.10.1版,还是我遗漏了什么?是的@AMC,你是对的,很抱歉!这实际上是我在做的降级。看起来pip show只能接受-files标志:我只得到了这样的选项:-终端中的用户。@stragu确实如此。奇怪的pip list和pip freeze确实支持-user.ah,但有趣的是,即使查看-user模块,版本也是一样的:PyQt5 5.10.1。情节变厚了?我刚刚发现系统和用户库在某种程度上是同步的。我试着卸载PyQt5 5.9.2,然后用pip3删除PyQt5 sip和pip3安装'PyQt5==5.9.2',最后我得到的是PyQt5.10,即不是这两个版本中的5.10.1。嗯,这看起来像是某种错误,总是会显示模块有史以来安装的最新版本,卸载时会重置。在python内核中检查模块版本将显示实际版本。我可以通过打开一个使用PyQt5的程序来再次检查这一点,而该程序不会使用例如PyQt5 5.10运行,因为它需要Qt5.10。可能会回答我自己的问题与此信息,但感谢堆为您的帮助调查!