Bootstrapping pip using ensurepip
Slowly, the pip
package manager has been replacing easy_install
since its introduction in 2008. Since Python 3.4, it has even become the default and is bundled with Python. Since Python 3.4 onward, it is installed by default within both the regular Python environment and that of pyvenv
; before that, a manual install is required. To automatically install pip
in Python 3.4 and above, the ensurepip
library is used. This is a library that handles automatic installation and/or upgrades of pip
, so it is at least as recent as the one bundled with ensurepip
.
ensurepip usage
The usage of ensurepip
is fairly straightforward. Just run python -m ensurepip
to guarantee a pip
version or python -m ensurepip --upgrade
to make sure that pip
will be at least the version that is bundled with ensurepip
.
In addition to installing the regular pip
shortcut, this will also install the pipX
and pipX.Y
links, which allow you to select a specific Python version. When using Python 2 and Python 3 simultaneously, this allows you to install packages within Python 2 and Python 3 with pip2
and pip3
, respectively. This means that if you use python -m ensurepip
on Python 3.5 you will get pip
, pip3
, and pip3.5
commands installed in your environment.
Manual pip install
The ensurepip
package is great if you are using Python 3.4 or above. Below that, however, you need to install pip
manually. Actually, this is surprisingly easy. It involves just two steps:
- Download the
get-pip.py
file: https://bootstrap.pypa.io/get-pip.py. - Execute the
get-pip.py
file: pythonget-pip.py
.Tip
If the
ensurepip
command fails due to permission errors, it can be useful to supply the--user
argument. This allows you to installpip
inside the userspecific site packages
directory, so root/admin access is not required.