pip 업그레이드로 인해 Python 설치가 엉망이 됨

pip 업그레이드로 인해 Python 설치가 엉망이 됨

새로 생성된 Ubuntu 16.4 가상 인스턴스에 작성한 Python 애플리케이션을 설치하려고 합니다. 이전에 내 PC에 설치한 일부 Python 패키지를 설치해야 합니다.

이 메시지를 보기 전까지는 모든 것이 잘 진행되고 있었습니다.

You are using pip version 8.1.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

글쎄, 나는 이것이 무해한 것 같다고 생각했습니다.

그러나 이 작업을 수행한 후 다음에 pip를 실행하면 다음과 같은 결과가 나타납니다.

$ pip freeze
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    from pip import main
ImportError: cannot import name main

예전 시점으로 돌아가야 할 것 같아서

$ sudo apt install python-pip

그런 다음

$ sudo apt install python-pip
...
Setting up python-pip (8.1.1-2ubuntu0.4) ...

좋아, pip 8.1.1을 복원했습니다. 연민

$ pip freeze
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    from pip import main
ImportError: cannot import name main

문제는 pip 업그레이드가 엉망이라는 것입니다. 어떻게 해결합니까?

답변1

 $python -m pip uninstall pip

이것을 사용하면 이전 pip 버전이 제공됩니다.

답변2

최근 Ubunutu 16.04에서 동일한 문제가 발생했습니다.

이 작업을 수행할 때 다음 사항에 유의하세요.

/usr/bin/pip freeze

추적 오류가 발생합니다. which pip를 실행하면 다음과 같은 결과가 나타납니다.

/usr/local/bin/pip

내가 사용하고 있는 쉘이 /usr/bin/pip올바르지 않습니다. 나는 /usr/bin/pip새 이름을 이전 이름이 있던 위치로 바꾸고 심볼릭 링크했습니다.

ln -s /usr/local/bin/pip /usr/bin/pip

pip Freeze를 실행하면 더 이상 오류가 나타나지 않습니다. 설치된 패키지를 볼 수 있습니다.

답변3

어떻게 작동하는지 모르겠지만 /usr/bin/pip 파일을 편집하고 문제가 되는 7행을 변경했습니다.

from pip import main

도착하다

from pip._internal import main

이로써 문제가 해결되었습니다.

저는 Windows 10에서 Ubuntu를 사용하고 있습니다.

/usr/local/bin/pip다른 답변에서 언급했듯이 이것은 내 컴퓨터 간의 차이점입니다 /usr/bin/pip.

답변4

sudo python3 -m pip install --force-reinstall pip

이렇게 하면 잘못된 점을 선택하는 문제가 해결됩니다.

관련 정보