새로 생성된 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
이렇게 하면 잘못된 점을 선택하는 문제가 해결됩니다.