我可以更新pip管理的包,但如何更新pip本身?根据pip--version,我目前在virtualenv中安装了pip1.1,我想更新到最新版本。

这是什么命令?我需要使用distribute吗?或者是否有本机pip或virtualenv命令?我已经尝试过pip更新和pip更新,但没有成功。


当前回答

在我的例子中,这是从Debian Stable的终端命令行运行的

python3 -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

pip和其他任何软件包一样只是一个PyPI包;您可以使用它来升级自己,就像升级任何软件包一样:

pip install --upgrade pip

在Windows上,建议使用以下命令:

python -m pip install --upgrade pip

为了让这对我起作用,我必须使用Python命令提示符(在WIN10上,VS CODE)在Python目录中向下搜索。在我的例子中,它位于AppData\Local\Programs\Python\python35-32目录中。从那里开始,我运行命令。。。

python -m pip install --upgrade pip

这奏效了,我很乐意去。

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

python.exe -m pip install --upgrade 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.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)