如何从我的虚拟环境中更新/升级pip本身?

我可以更新pip管理的包,但是如何更新pip本身?根据pip --version,我目前在我的虚拟环境中安装了pip 1.1,我想更新到最新版本。

那是什么命令?我需要使用分发还是有本机pip或Virtualenv命令?我已经尝试了pip updatepip update pip,但没有成功。

1915426 次浏览

pip和其他包一样只是pypi包;你可以用它来升级自己,就像升级任何包一样:

pip install --upgrade pip

在Windows上,推荐命令是:

python -m pip install --upgrade pip

更安全的方法是通过python模块运行pip

python -m pip install -U pip

在windows上,尝试替换自己的二进制文件似乎存在问题,此方法可以解决该限制。

在我的情况下,这可以从Debian Stable中的终端命令行工作

python3 -m pip install --upgrade pip

在我的情况下,我的pip版本被打破,所以更新本身将无法工作。

修复:

(inside virtualenv):easy_install -U pip

我在Debian Jessie下尝试了上面提到的所有这些解决方案。它们不起作用,因为它只需要debian包管理器编译的最新版本1.5.6,相当于版本6.0. x。一些使用pip作为先决条件的包将无法作为结果工作,例如spaCy(它需要选项--no-cache-dir才能正常运行)。

因此,解决这些问题的实际最佳方法是使用wget、从网站或使用curl运行get-pip.py下载,如下所示:

 wget https://bootstrap.pypa.io/get-pip.py -O ./get-pip.pypython ./get-pip.pypython3 ./get-pip.py

这将安装当前版本,在撰写此解决方案时是9.0.1,这远远超出了Debian提供的版本。

 $ pip --versionpip 9.0.1 from /home/myhomedir/myvirtualenvdir/lib/python2.7/dist-packages (python 2.7)$ pip3 --versionpip 9.0.1 from /home/myhomedir/myvirtualenvdir/lib/python3.4/site-packages (python 3.4)

为了让这个对我有用,我必须使用Python命令提示符(在VS CODE的WIN10上)在Python目录中钻取。在我的情况下,它在我的AppData\Local\Programs\Python\python35-32目录中。从那里现在我运行命令…

python -m pip install --upgrade pip

这工作,我很好去。

我在C:\Python\Python36中安装了Python,所以我转到Windows命令提示符并输入cd C:\Python\Python36以进入正确的目录。然后输入python -m install --upgrade pip一切都好!

在我的Windows 7笔记本电脑上,安装最新版本pip的正确方法是:

python.exe -m pip install --upgrade pip

非常简单。只需从https://bootstrap.pypa.io/get-pip.py下载pip。将文件保存在一些forlder或dekStop中。我将文件保存在我的D驱动器中。然后从您的命令提示符导航到您下载pip的文件夹。然后在那里输入

python -get-pip.py

Pip安装截图

使用管理员权限打开命令提示符,然后重复命令:

python -m pip install --upgrade pip

pip版本10有一个问题。它将显示为错误:

ubuntu@mymachine-:~/mydir$ sudo pip install --upgrade pipTraceback (most recent call last):File "/usr/bin/pip", line 9, in <module>from pip import mainImportError: cannot import name main

解决方案是在你想要升级的venv中,然后运行:

sudo myvenv/bin/pip install --upgrade pip

而不仅仅是

sudo pip install --upgrade pip

单行Python程序
我发现的最好的方法是编写一个单行程序来下载并运行官方的get-pip脚本。代码见下文。

官方文档建议使用curl下载get-pip脚本,但由于我在windows上工作并且没有安装curl,我更喜欢使用python本身下载并运行脚本。

以下是可以使用Python 3通过命令行运行的单行程序:

python -c "import urllib.request; exec(urllib.request.urlopen('https://bootstrap.pypa.io/get-pip.py').read())"

这一行按照安装说明获取官方的“get-pip.py”脚本,并使用“exec”命令执行脚本。

对于Python2,您可以将“urllib.request”替换为“urllib2”:

python -c "import urllib2; exec(urllib2.urlopen('https://bootstrap.pypa.io/get-pip.py').read())"

注意事项
值得注意的是,盲目运行任何python脚本本质上都是危险的。出于这个原因,官方说明建议下载脚本并在运行前检查它。

也就是说,许多人实际上并不检查代码而只是运行它。这个单行程序使这更容易。

我在树莓派上遇到了类似的问题。

问题是超文本传输协议需要SSL,所以我需要强制它使用https来绕过这个要求。

sudo pip install --upgrade pip --index-url=https://pypi.python.org/simple

sudo pip-3.2 --upgrade pip --index-url=https://pypi.python.org/simple/

使用“pip安装--升级pip”升级pip并不总是有效,因为存在可怕的证书问题:确认ssl证书时出现问题:[SSL:TLSV1_ALERT_PROTOCOL_VERSION]tlsv1警报协议版本

我喜欢对虚拟环境使用一条线命令:

curl https://bootstrap.pypa.io/get-pip.py | python -

或者如果你想安装它的盒子宽你将需要

curl https://bootstrap.pypa.io/get-pip.py | sudo python -

如果您想在自动化脚本中运行时使输出静音,您可以给curl一个-s标志。

如果您正在使用venv,任何对pip安装的更新都会导致系统升级pip而不是venv pip。您还需要升级pip无融资创业包。

python3 -m pip install --upgrade pip setuptools wheel

我遇到了类似的情况,想更新urllib3包。对我有用的是:

pip3 install --upgrade --force-reinstall --ignore-installed urllib3==1.25.3

对于windows

  • 转到命令提示符
  • 并使用此命令
  • python -m pip install -–upgrade pip
  • 不要忘记重新启动编辑器,以避免任何错误
  • 您可以通过以下方式查看pip的版本
  • pip --version
  • 如果您想安装pip的任何特定版本,例如version 18.1 ,请使用此命令,
  • python -m pip install pip==18.1

首先,这样做:

sudo apt install python3-pip python-setuptools-doc

然后,作为非root用户(永远,永远不要以root身份运行#1!):

# N.B. bash shell works for this, I have never tested with other shells!. ....your_virtualenv_folder/bin/activatepip3 install -U pip

注意:-U--upgrade的同义词,据我所知。

对于linux

python3 -m pip install --upgrade pip

对于windows:

  1. 在Windows搜索框中键入命令提示符

  2. 在命令提示符中,键入cd\

  3. 按回车键,您将看到驱动器名称C:\>

  4. 找到您的Python应用程序路径,即您最初安装Python的文件夹

    下面是一个Python应用程序路径的示例:

    C:\Users\Ron\AppData\Local\Programs\Python\Python39
  5. 检索Python应用程序路径后,在命令提示符中键入以下命令:

    cd后跟您的Python应用程序路径

    对于我们的例子:

    C:\>cd C:\Users\Ron\AppData\Local\Programs\Python\Python39
  6. 按回车键

  7. 键入python -m pip install --upgrade pip并按回车键

pip install --upgrade pip

在UBUNTU 18.04中,当我执行上述命令时,我遇到以下错误:

ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/usr/local/bin/pip'Consider using the `--user` option or check the permissions.

下面的命令解决了我的问题:

pip install --upgrade pip --user

转到您的命令提示符并键入以下内容:

python -m pip install --upgrade pip

linux

我将更新此代码

sudo -H pip3 install --upgrade pip

在虚拟环境中更新pip时,在python命令中使用完整路径

环境文件夹结构

myenv\脚本\python

h:\folderName\myenv\scripts\python -m pip install --upgrade pip