boardrider boardrider - 3 months ago 17
Python Question

What is the correct format to upgrade pip3 when the default pip is pip2?

I develop for both

Python 2
and
3.


Thus, I have to use both
pip2
and
pip3.


When using
pip3 -
I receive this upgrade request (last two lines):

$ pip3 install arrow
Requirement already satisfied (use --upgrade to upgrade): arrow in c:\program files (x86)\python3.5.1\lib\site-packages
Requirement already satisfied (use --upgrade to upgrade): python-dateutil in c:\program files (x86)\python3.5.1\lib\site-packages (from arrow)
Requirement already satisfied (use --upgrade to upgrade): six>=1.5 in c:\program files (x86)\python3.5.1\lib\site-packages (from python-dateutil->arrow)
You are using pip version 7.1.2, however version 8.1.2 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.


My default
pip
is for
Python 2,
namely:

$ python -m pip install --upgrade pip
Requirement already up-to-date: pip in /usr/lib/python2.7/site-packages


However, none of the following explicit commands succeed in upgrading the
Python 3 pip:


$ python -m pip3 install --upgrade pip3
/bin/python: No module named pip3

$ python -m pip install --upgrade pip3
Collecting pip3
Could not find a version that satisfies the requirement pip3 (from versions: )
No matching distribution found for pip3

$ python -m pip install --upgrade pip3.4
Collecting pip3.4
Could not find a version that satisfies the requirement pip3.4 (from versions: )
No matching distribution found for pip3.4


What is the correct command to upgrade pip3 when it is not the default pip?



Environment:

$ python3 -V
Python 3.4.3
$ uname -a
CYGWIN_NT-6.1-WOW 2.5.2(0.297/5/3) 2016-06-23 14:27 i686 Cygwin

Answer

Just use the pip3 command you already have:

pip3 install --upgrade pip

The installed project is called pip, always. The pip3 command is tied to your Python 3 installation and is an alias for pip, but the latter is shadowed by the pip command in your Python 2 setup.

You can do it with the associated Python binary too; if it executable as python3, then use that:

python3 -m pip install --upgrade pip

Again, the project is called pip, and so is the module that is installed into your site-packages directory, so stick to that name for the -m command-line option and for the install command.

Comments