我一直认为pip适用于Python 2,pip3适用于Python3。要安装不同版本的pip,请执行以下操作:
sudo apt-get install python-pip
sudo apt-get install python3-pip
然后我得到了预期的结果:
$ pip --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
$ pip3 --version
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)
不过,那些是旧版本,所以我执行以下操作:
$ sudo pip install pip --upgrade
我明白了:
$ pip --version
pip 19.0.3 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
$ pip3 --version
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)
当我为某些软件包安装pip3时,出现以下消息:
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
好吧,我已经运行过了,所以我尝试一下:
$ sudo pip3 install pip --upgrade
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python3/dist-packages, outside environment /usr
Successfully installed pip-19.0.3
但是现在我明白了:
$ pip --version
pip 19.0.3 from /usr/local/lib/python3.5/dist-packages/pip (python 3.5)
$ pip3 --version
pip 19.0.3 from /usr/local/lib/python3.5/dist-packages/pip (python 3.5)
对吗?这有关系吗? Python 3.5的pip版本是否可用于安装Python 2软件包?
更新
根据@furas提供的答案,以下是我为正确安装pip和pip3的更新版本而运行的所有命令:
sudo apt-get install python-pip --yes
sudo apt-get install python3-pip --yes
sudo python3 -m pip install pip --upgrade
sudo python -m pip install pip --upgrade --force # this line fixes the pip install to point to the python2 version instead of the python3 version
并产生以下结果:
$ pip --version
pip 19.0.3 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
$ pip3 --version
pip 19.0.3 from /usr/local/lib/python3.5/dist-packages/pip (python 3.5)
答案 0 :(得分:4)
每个Python都应拥有自己的pip
,因为每个Python可能使用同一模块的不同版本,并且每个Python都将模块安装在不同的文件夹中。
您可以使用Python2
为pip
安装Python2
,它应该创建正确的文件pip
python -m pip install -U --force pip
您还应该拥有pip
,pip2
,pip2.7
,pip3
,pip3.5
。您甚至可以同时拥有pip3.6
,pip3.7
。
在控制台pip
中写入内容,然后按Tab键,它将显示以pip
开头的所有程序
您可以通过
找到pip
的完整路径
which pip
看到它是python的脚本。
不同的pip
具有不同的第一行#!/usr/bin/python
或#!/usr/bin/python3.5
。所有版本的其余代码都应该相同。