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

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


当前回答

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

python -get-pip.py

其他回答

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

python -m pip install --upgrade pip

这奏效了,我很乐意去。

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

python -get-pip.py

单线Python程序我找到的最好的方法是编写一个单行程序,下载并运行官方的get pip脚本。请参见下面的代码。

官方文档建议使用curl来下载getpip脚本,但由于我在windows上工作,没有安装curl,所以我更喜欢使用python本身来下载和运行脚本。

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

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

这一行根据安装说明获取官方的“getpip.py”脚本,并使用“exec”命令执行该脚本。

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

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

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

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

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

解决方案是在您要升级的供应商中,然后运行:

sudo myvenv/bin/pip install --upgrade pip

而不仅仅是

sudo 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