반응형
질문
pip을 사용하여 패키지를 설치하려고 할 때마다이 가져 오기 오류가 발생합니다:
guru@guru-notebook:~$ pip3 install numpy
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
ImportError: cannot import name 'main'
guru@guru-notebook:~$ cat `which pip3`
#!/usr/bin/python3
# DEBIAN에 의해 생성 된
import sys
# setuptools와 유사하게 주 진입점을 실행하지만 setup.py에서 실제 진입점을 설치하지 않았으므로
# pkg_resources API를 사용하지 마십시오.
from pip import main
if __name__ == '__main__':
sys.exit(main())
이전에는 잘 작동했지만, 왜이 오류가 발생하는지 확실하지 않습니다. 이 오류에 대해 검색했지만 해결책을 찾을 수 없습니다.
추가 세부 정보가 필요하면 알려주십시오. 질문을 업데이트하겠습니다.
답변
당신은 아마도 sudo pip install pip --upgrade
와 같은 방법으로 시스템 pip를 실수로 업그레이드했을 것입니다.
pip 10.x는 내부 구조가 조정되었습니다. 보이는 pip3
명령은 패키지 유지자(아마도 debian 기반인가요?)가 제공하는 것이며 pip에서 관리되는 파일이 아닙니다.
이에 대해서는 pip의 이슈 트래커에서 더 읽어볼 수 있습니다.
시스템 pip를 업그레이드하지 않고 가상 환경을 사용하는 것이 좋습니다.
pip3
이진 파일을 복구하려면 sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall
를 실행해야 합니다.
"지원되지 않는 영역"에서 계속 진행하려면 (시스템 패키지 관리자 외부에서 시스템 패키지를 업그레이드하는 것), pip3
대신에 python3 -m pip ...
를 사용할 수 있을 것입니다.
반응형
댓글