EdgarX
EdgarX

Reputation: 1527

How to upgrade pip3?

I want to use python3.5 for development, but many times when I install the module for python 3.5, it always fails. The terminal tells me that a higher version is available, but it doesn't work when I upgrade it. enter image description here

Upvotes: 150

Views: 736522

Answers (13)

Bart Mensfort
Bart Mensfort

Reputation: 1088

I have to use following in Ubuntu 24.04. Maybe the first is not needed:

sudo apt-get remove python3-pip
sudo apt-get install python3-pip

Upvotes: 0

Ali MUSA
Ali MUSA

Reputation: 237

  • for Python 3:

    python3 -m pip install --upgrade pip
    
  • for Python 2:

    python2 -m pip install --upgrade pip 
    

Upvotes: 22

BhushanDhamale
BhushanDhamale

Reputation: 1275

To upgrade your pip3, try running:

sudo -H pip3 install --upgrade pip

Your pip may move from /bin to /usr/local/bin

To upgrade pip as well, you can follow it by:

sudo -H pip2 install --upgrade pip

Upvotes: 109

user8972021
user8972021

Reputation:

First decide which pip you want to upgrade, i.e. just pip or pip3. Mostly it'll be pip3 because pip is used by the system, so I won't recommend upgrading pip.

The difference between pip and pip3 is that

NOTE: I'm referring to PIP that is at the BEGINNING of the command line.

pip is used by python version 2, i.e. python2

and

pip3 is used by python version 3, i.e. python3

For upgrading pip3: # This will upgrade python3 pip.

pip3 install --upgrade pip

For upgrading pip: # This will upgrade python2 pip.

pip install --upgrade pip

This will upgrade your existing pip to the latest version.

Upvotes: 30

Dany Balian
Dany Balian

Reputation: 608

If you try to run

sudo -H pip3 install --upgrade pip3 

you will get the following error:

WARNING: You are using pip version 19.2.3, however version 21.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

but if you upgrade using the suggested command:

pip install --upgrade pip

then, the legacy pip will be upgraded, so what I did is the following:

which pip3

and I located my pip3 installation (just in case the following command wouldn't upgrade the legacy pip. Then i changed to that directory and upgraded pip3 using the following commands: (your directory could be different)

cd /Library/Frameworks/Python.framework/Versions/3.8/bin
sudo -H pip3 install --upgrade pip

after this:

pip --version

will still show the legacy version, while

pip3 --version

will show pip 21.0.1

Upvotes: 0

Aman Kumar
Aman Kumar

Reputation: 232

This worked for me (mac)

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

Upvotes: 0

SuperNova
SuperNova

Reputation: 27486

In Ubuntu 18.04, below are the steps that I followed.

python3 -m pip install --upgrade pip

For some reason you will be getting an error, and that be fixed by making bash forget the wrongly referenced locations using the following command.

hash -r pip

Upvotes: 2

Chukwuma Nwaugha
Chukwuma Nwaugha

Reputation: 715

pip3 install --upgrade pip worked for me

Upvotes: 6

Gregory Rubinstein
Gregory Rubinstein

Reputation: 101

What worked for me was the following command:

python -m pip install --upgrade pip

Upvotes: 7

ivan Ying
ivan Ying

Reputation: 11

If you have 2 versions of Python (eg: 2.7.x and 3.6), you need do:

  1. add the path of 2.x to system PATH
  2. add the path of 3.x to system PATH
  3. pip3 install --upgrade pip setuptools wheel

for example, in my .zshrc file:

export PATH=/usr/local/Cellar/python@2/2.7.15/bin:/usr/local/Cellar/python/3.6.5/bin:$PATH

You can exec command pip --version and pip3 --version check the pip from the special version. Because if don't add Python path to $PATH, and exec pip3 install --upgrade pip setuptools wheel, your pip will be changed to pip from python3, but the pip should from python2.x

Upvotes: 1

El Fadel Anas
El Fadel Anas

Reputation: 1721

Try this command:

pip3 install --upgrade setuptools pip

Upvotes: 42

Martin Thoma
Martin Thoma

Reputation: 136675

The Problem

You use pip (the Python 2 one). Now you want to upgrade pip (the Python 3 one). After that, pip is the Python 3 one.

The solution

Use pip2 and pip3. This way it is explicit.

If you want to use pip, just check where it is (which pip) and change the link. For example:

$ which pip
/usr/local/bin/pip

$ pip --version
pip 9.0.1 from /usr/local/lib/python3.5/dist-packages (python 3.5)

$ which pip2
/usr/local/bin/pip2

$ sudo rm /usr/local/bin/pip
$ sudo ln -s /usr/local/bin/pip2 /usr/local/bin/pip

$ pip --version
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

Upvotes: 19

JanHak
JanHak

Reputation: 1735

You are using pip3 to install flask-script which is associated with python 3.5. However, you are trying to upgrade pip associated with the python 2.7, try running pip3 install --upgrade pip.

It might be a good idea to take some time and read about virtual environments in Python. It isn't a best practice to install all of your packages to the base python installation. This would be a good start: http://docs.python-guide.org/en/latest/dev/virtualenvs/

Upvotes: 147

Related Questions