Difference between 'python -m pip install' and 'pip install'


Installing packages in Python can be done using the package manager pip. There are two ways to run pip to install packages: python -m pip install and pip install. In this article, we’ll discuss the difference between the two.

python -m pip install

The python -m pip install command runs the pip module as a script using the python executable. The -m option stands for “module” and it tells Python to run the specified module as a script. This allows you to specify which Python interpreter you want to use, even if you have multiple versions of Python installed on your system. For example:

python3 -m pip install <package_name>

This is a more flexible and portable way of installing packages, as it allows you to specify which Python interpreter you want to use, even if you have multiple versions of Python installed on your system. This can be useful if you want to install a package into a specific Python environment, or if you want to use a different version of Python than the default one on your system.

pip install

The pip install command assumes that pip is in your system’s PATH, and that it corresponds to the correct version of Python that you want to use. For example:

pip3 install <package_name>

This is a more convenient option, as it does not require you to specify the Python interpreter to use. However, if you have multiple versions of Python installed, or if the pip executable is not in your PATH, then pip install may not work as expected.

In conclusion, both python -m pip install and pip install achieve the same result, but python -m pip install is a more flexible and portable option, while pip install is more convenient but may not work in all scenarios. It is important to understand the difference between the two to choose the right approach when installing packages in Python.


Author: robot learner
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source robot learner !
  TOC