Installing pip on Ubuntu makes it possible to install Python packages from PyPI when a module, tool, or helper script is not available as a normal apt package. That is the usual starting point for project dependencies, Python-based automation, and utilities that need a packaging workflow outside Ubuntu's base repositories.
On current Ubuntu releases, the system installer for pip comes from the python3-pip package. That package adds the wrapper commands for the distro-managed Python 3 interpreter, while python3 -m pip remains the clearest way to bind package operations to the exact interpreter that will run them.
Installing pip does not make interpreter-wide pip install the default safe path on modern Ubuntu. The distro marks its system Python environment as externally managed, so project dependencies should normally go into a virtual environment, and minimal hosts may still need python3-venv if the next task is isolated package installs.
Related: How to install Python 3 on Ubuntu or Debian
Related: How to check Python version
$ sudo apt update Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease Hit:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease Hit:3 http://archive.ubuntu.com/ubuntu noble-security InRelease Get:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] ##### snipped ##### Reading package lists... Done
$ sudo apt install --yes python3-pip Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: python3-pkg-resources python3-setuptools python3-wheel Suggested packages: python-setuptools-doc ##### snipped ##### Setting up python3-pip (24.0+dfsg-1ubuntu1.3) ...
The required package name stays python3-pip on current Ubuntu releases.
On minimal images, apt may also pull the base Python 3 runtime, python3-setuptools, python3-wheel, and recommended build helpers such as python3-dev or build-essential the first time Python packaging support is installed.
$ python3 -m pip --version pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12) $ command -v pip pip3 pip3.12 /usr/bin/pip /usr/bin/pip3 /usr/bin/pip3.12
Use python3 -m pip when possible so package operations stay tied to the intended interpreter, especially on hosts with more than one Python installation.
$ python3 -m pip --help Usage: /usr/bin/python3 -m pip <command> [options] Commands: install Install packages. download Download packages. uninstall Uninstall packages. freeze Output installed packages in requirements format. inspect Inspect the python environment. list List installed packages. show Show information about installed packages. check Verify installed packages have compatible dependencies. config Manage local and global configuration.
If a later python3 -m pip install <package> returns externally-managed-environment, install the package from apt when a distro package exists or create a virtual environment instead of forcing a global install into Ubuntu's system Python.