尝试将 Python 3.5 的 pip 8.1.1 升级到 8.1.2,下载了 pip 8.1.2 的轮子,但仍将 pip 的版本显示为 8.1.1。 无论我是删除缓存还是使用缓存的轮子,都会发生这种情况。 许多其他人也有类似的问题: http :
$ python3.5 -m pip install --upgrade pip
收集点子
使用缓存的 pip-8.1.2-py2.py3-none-any.whl
安装收集的包:pip
成功安装pip-8.1.1
您使用的是 pip 版本 8.1.1,但版本 8.1.2 可用。
您应该考虑通过“pip install --upgrade pip”命令进行升级。
您能否重新测试并粘贴您运行的完整命令及其输出,以及为什么您认为没有 pip 8.1.2? 我只是尝试在本地运行此命令,然后得到:
njs<strong i="6">@a08469421425</strong>:~$ pip3 install -U pip
Collecting pip
Downloading pip-8.1.2-py2.py3-none-any.whl (1.2MB)
100% |################################| 1.2MB 787kB/s
Installing collected packages: pip
Successfully installed pip-8.1.1
You are using pip version 8.1.1, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
njs<strong i="7">@a08469421425</strong>:~$ pip3 install -U pip
Requirement already up-to-date: pip in ./.local/lib/python3.5/site-packages
njs<strong i="8">@a08469421425</strong>:~$ pip3 --version
pip 8.1.2 from /home/njs/.local/lib/python3.5/site-packages (python 3.5)
所以我得到了相同的输出,但实际上 pip 升级到了 8.1.2。 (这绝对是一个错误,它说“成功安装了 pip-8.1.1”——我不知道这是怎么回事,一个比我更了解 pip 的人。也许它应该被认为是升级 pip 后的错误, pip 抱怨是旧版本——但这只是令人困惑,实际上并不是问题,pip 的意思是你_running_ 的 pip 版本是 8.1.1,_not_ 你刚刚_安装_的 pip 版本是 8.1 .1.)
另外,如果我尝试使用 python 2.7 的 pip,就像在链接的 askubuntu 问题中一样,我会得到:
njs<strong i="6">@8bde0cc97ff7</strong>:~$ pip install --upgrade pip
Collecting pip
Downloading pip-8.1.2-py2.py3-none-any.whl (1.2MB)
100% |################################| 1.2MB 883kB/s
Installing collected packages: pip
Successfully installed pip-8.1.2
njs<strong i="7">@8bde0cc97ff7</strong>:~$ pip install --upgrade pip
Requirement already up-to-date: pip in ./.local/lib/python2.7/site-packages
njs<strong i="8">@8bde0cc97ff7</strong>:~$ pip --version
pip 8.1.2 from /home/njs/.local/lib/python2.7/site-packages (python 2.7)
所以这不仅有效,而且还避免了我在 xenial pip3 中看到的奇怪的输出问题。
我认为这是因为 Ubuntu 修补了他们的 pip 以防止它修改使用 apt 安装的软件包。
@njsmith :我得到“您正在使用 pip 版本 8.1.1,但是版本 8.1.2 可用。您应该考虑通过 'pip install --upgrade pip' 命令进行升级。” Python 2 ( pip
) 和 Python 3 ( pip3
) 的 pip 消息。 对于 Python 2, pip --version
给出pip 8.1.2 from /home/edwinksl/.local/lib/python2.7/site-packages (python 2.7)
而对于 Python 3, pip3 --version
给出pip 8.1.2 from /home/edwinksl/.local/lib/python3.5/site-packages (python 3.5)
。 因此,尽管有(误导性)警告消息,但两种 Python 的 pip 似乎都已成功从 8.1.1 升级到 8.1.2。
这里的问题是我不知道带有错误警告消息的错误是出在 pip 本身还是出自 @dstufft 建议的 pip 的 Ubuntu 补丁。
哦对了,它安装到--user
,我忘记了 Ubuntu 应用了该补丁,如果您仍然收到该错误消息,则可能是因为不稳定的sys.path
。 python -c "import pip; print(pip.__version__)"
给你什么?
@dstufft python -c "import pip; print(pip.__version__)"
给出8.1.2
。
有趣……您仍然收到“您正在使用 8.1.1 但 8.1.2 可用”的消息?
@dstufft我只在第一次调用 Python 2 的pip install -U pip
和 Python 3 的pip3 install -U pip
收到该消息。随后的调用为 Python 2 和Requirement already up-to-date: pip in ./.local/lib/python3.5/site-packages
提供了Requirement already up-to-date: pip in ./.local/lib/python2.7/site-packages
Requirement already up-to-date: pip in ./.local/lib/python3.5/site-packages
用于 Python 3。
啊- 好的,那么我认为这只是一个我认为我们在其他地方打开的错误,在那里升级有时直到进程完全退出后才指示最新版本。
@dstufft这对我来说很有意义,谢谢!
这里也是一样。 蟒蛇-c“进口点子;打印(PIP版)”报告“8.1.2”,但我仍然得到错误。 除非是因为我需要运行的命令 (STATIC_DEPS=true sudo -H pip install lxml==3.6.0) 正在使用 sudo 调用它?
只是有助于在这个问题上制造一些额外的噪音。 升级对我来说也失败了,另外,卸载 pip3 并在 8.1.1 版而不是 8.1.2 版中重新安装结果。
sudo -H pip install --upgrade pip
对任何人都有效吗?
不适用于 ubuntu 16.04
sudo -H pip install --upgrade pip
Collecting pip
Using cached pip-8.1.2-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-8.1.1
You are using pip version 8.1.1, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
它工作:
wget https://pypi.python.org/packages/e7/a8/7556133689add8d1a54c0b14aeff0acb03c64707ce100ecd53934da1aa13/pip-8.1.2.tar.gz
tar -xzvf pip-8.1.2.tar.gz
cd pip-8.1.2
sudo python setup.py install
广告
谢谢你
由于真正的问题似乎是安装新版本时报告的旧版本,我关闭此问题作为#3049、#2382 和#3709 的副本
你好呀! 我在 Linux Mint 18 上遇到了同样的问题,终于在 pip 的主页上找到了答案! 这种方法对我有用。 希望能帮助到你!
您可能安装了多个 Python 版本。 我正在运行 Ubuntu 16.04,最后发现我需要在 python 2.7 和 3 中升级 pip。因为我并排运行它们,所以我需要指定 pip3
pip3 install -U pip
“Ubuntu 16.04.1 LTS”上的相同问题。 但以下命令有帮助:
apt-get remove python3-pip python-pip
pip2 install -U pip
pip3 install -U pip
现在可以了:
# pip install --upgrade pip
Requirement already up-to-date: pip in /usr/local/lib/python2.7/dist-packages
# python2 -c "import pip; print(pip.__version__)"
9.0.1
# python3 -c "import pip; print(pip.__version__)"
9.0.1
通过 cron 运行 certbot-auto 时,我遇到了Certbot has problem setting up the virtual environment
和You are using pip version 8.0.3, however version 9.0.1 is available
的相同错误。 定期(以 root 身份)运行 certbot-auto 工作正常。 为了解决这个问题,我必须将export HOME=/root
到 cron 命令的开头,如下所示:
48 */11 * * * export HOME=/root; /root/bin/certbot-auto renew --quiet --no-self-upgrade
我删除了第一个 pip3:
sudo apt remove python3-pip
然后安装:
python get-pip.py
说明可以在这里找到:
https://pip.pypa.io/en/stable/installing/#installing -with-get-pip-py
安装最新 pip 的完整流程:(如果您已经安装了 pip 但没有造成任何伤害,则某些步骤可能是多余的)
sudo su # become root
cd # prevent trashing your user's python cache permissions
apt-get install python3-pip # bring in easy_install3
pip install --upgrade pip # cache latest pip sources
apt-get remove python3-pip python-pip # remove Ubuntu's pip
easy_install3 pip # install up to date vanilla pip
pip --version # verify it
exit # back to your user.
这在 Python 2 中对我有用。
sudo apt-get purge --auto-remove python-pip
然后按照上面@sc00ut 的步骤
这也适用于我。 遵循@Dinh-Hung-Tu & @sc00ut 的步骤
最后一步是hash -r
刷新缓存
apt update && upgrade python3-pip
谢谢你,它奏效了。
此线程已被自动锁定,因为它在关闭后没有任何近期活动。 请为相关错误打开一个新问题。
最有用的评论
它工作: