Search code examples
pythonlinuxpip

ModuleNotFoundError: No module named 'pip._internal.cli'


I have two versions of pip and pip3 installed in different location.

When I try to do a pip install package-name it throws Error as:


     ModuleNotFoundError: No module named 'pip._internal.cli'
pip 18.1 from /project/miniconda/lib/python3.7/site-packages/pip (python 3.7)
$ which pip
/project/miniconda/bin/pip
$ which pip3
/usr/local/bin/pip3
$ pip -V
pip 18.1 from /project/miniconda/lib/python3.7/site-packages/pip (python 3.7)
$ pip3 -V
Traceback (most recent call last):
  File "/usr/local/bin/pip3", line 7, in <module>
    from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip._internal.cli'```


Since I don't have super user access, I cannot modify pip._internal.cli.main to pip.internal.cli.main.


Solution

  • Please upgrade pip with python -m pip install --upgrade --force-reinstall pip.

    You can try to install any package with: python -m pip install package-name for python2.7 and python3 -m pip install package-name for python3.

    Using python -m pip install instead of just pip install is recommended. The reason is that it will use the correct interpreter for your python installation, specially if you have many versions installed. More details here: https://snarky.ca/why-you-should-use-python-m-pip/