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

时间:2013-03-05 10:29:18

标签: python upgrade virtualenv pip package-managers

我可以更新pip托管软件包,但如何更新pip本身?根据{{​​1}},我目前在我的virtualenv中安装了pip 1.1,我想更新到最新版本。

这是什么命令?我是否需要使用分发或是否有本机pip或virtualenv命令?我已经尝试pip --versionpip update但没有成功。

20 个答案:

答案 0 :(得分:811)

pip和其他任何人一样PyPI package;您可以像升级任何包一样使用它来升级自己:

pip install --upgrade pip

在Windows上,recommended command为:

python -m pip install --upgrade pip

答案 1 :(得分:50)

更安全的方法是run pip though a python module

python -m pip install -U pip

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

答案 2 :(得分:37)

在我的情况下,我的pip版本被破坏,因此更新本身不起作用。

修正:

(inside virtualenv):easy_install -U pip

答案 3 :(得分:9)

我在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.py
 python ./get-pip.py
 python3 ./get-pip.py

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

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

答案 4 :(得分:2)

使用“ pip install --upgrade pip ”升级pip并不总是有效,因为存在可怕的证书问题:There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version

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

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

或者,如果您想在宽阔的盒子中安装它,则需要

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

如果要在自动化脚本中运行时使输出静音,可以为curl提供 -s 标志。

答案 5 :(得分:1)

在我的情况下,这可以在Debian Stable的终端命令行中使用

python3 -m pip install --upgrade pip

答案 6 :(得分:1)

为了让我能够使用它,我必须使用Python命令提示符(在VS CODE的WIN10上)深入Python目录。就我而言,它位于我的“AppData \ Local \ Programs \ Python \ python35-32”目录中。从那时起,我运行了命令......

python -m pip install --upgrade pip

这很有用,我很高兴。

答案 7 :(得分:1)

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

python -m pip install --upgrade pip

答案 8 :(得分:0)

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

答案 9 :(得分:0)

对于Linux

python3 -m pip install --upgrade pip

对于窗户:

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

2.在命令提示符中,输入“cd\”

3.按 Enter,您将看到驱动器名称 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并按回车

答案 10 :(得分:0)

首先,这样做:

sudo apt install python3-pip python-setuptools-doc

然后,来自一个非root操作系统用户(永远,永远不要在pip*操作系统用户下运行root!!!):

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

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

答案 11 :(得分:0)

对于 windows

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

答案 12 :(得分:0)

我处于类似情况,想更新urllib3软件包。 对我有用的是:

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

答案 13 :(得分:0)

如果您使用venv,则任何更新到pip的安装都将导致升级系统pip,而不是venv pip。您还需要升级pip引导程序包。

  python3 -m pip install --upgrade pip setuptools wheel

答案 14 :(得分:0)

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

问题在于http需要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/

答案 15 :(得分:0)

单行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())"

此行按照installation notes获取官方的“ get-pip.py”脚本,并使用“ exec”命令执行该脚本。

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

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

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

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

答案 16 :(得分:0)

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

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

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

sudo myvenv/bin/pip install --upgrade pip

不只是

sudo pip install --upgrade pip

答案 17 :(得分:0)

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

python.exe -m pip install --upgrade pip

答案 18 :(得分:0)

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

答案 19 :(得分:-2)

非常简单。只需从https://bootstrap.pypa.io/get-pip.py下载点子即可。将文件保存在forlder或dekstop中。我将文件保存在D盘中,然后从命令提示符导航到下载pip的文件夹。然后在那输入

python -get-pip.py

Pip installation screenshot