Ubuntu 16.10에서 Python 3.6 용 pip를 설치하는 방법은 무엇입니까?


40

이 질문이 중복 된 것처럼 보일 수도 있지만 그렇지 않다는 점을 지적하면서 시작하고 싶습니다. Ask Ubuntu에서 내가 본 모든 질문은 Python 3의 pip에 관한 것이며 Python 3.6에 대해 이야기하고 있습니다. 그때 사용 된 단계는 Python 3.6에서 작동하지 않습니다.

  1. 공식 도커 스토어 에서 명확한 Ubuntu 16.10 이미지를 얻었습니다 .
  2. 운영 apt-get update
  3. 운영 apt-get install python3.6
  4. 운영 apt-get install python3-pip
  5. 운영 pip3 install requests bs4
  6. 운영 python3.6 script.py

ModuleNotFoundError아래에 있어 :

 Traceback (most recent call last):
    File "script.py", line 6, in <module>
     import requests
 ModuleNotFoundError: No module named 'requests'

내가 기계에 가지고있는 파이썬과 핍 :

python3
python3.5
python3.5m
python3.6
python3m
python3-config
python3.5-config
python3.5m-config
python3.6m
python3m-config  

pip
pip3
pip3.5

답변:


43

이 답변은 python3.6설치 한 것으로 가정합니다 . 를 들어 python3.7, 교체 3.6와 함께 3.7. 를 들어 python3.8, 교체 3.63.8뿐만 아니라 먼저해야 할 수 있습니다 python3.8-distutils패키지를.

sudo로 설치

설치pip 와 관련 하여 curl(대신 wget)를 사용하면 파일을 디스크에 쓰지 않습니다.

curl https://bootstrap.pypa.io/get-pip.py | sudo -H python3.6

-H플래그와 분명히 필요하다 sudo같은 오류를 방지하기 위해 업데이트 된 파이썬 인터프리터를 위해 주사위를 설치할 때 다음과 같은 :

'/home/someuser/.cache/pip/http'디렉토리 또는 상위 디렉토리가 현재 사용자의 소유가 아니며 캐시가 사용 불가능합니다. 해당 디렉토리의 권한과 소유자를 확인하십시오. sudo와 함께 pip를 실행하는 경우 sudo의 -H 플래그가 필요할 수 있습니다.

현재 사용자가 '/home/someuser/.cache/pip'디렉토리 또는 상위 디렉토리를 소유하지 않았으며 캐싱 휠이 사용 불가능합니다. 해당 디렉토리의 권한과 소유자를 확인하십시오. sudo와 함께 pip를 실행하는 경우 sudo의 -H 플래그가 필요할 수 있습니다.

sudo없이 설치

curl https://bootstrap.pypa.io/get-pip.py | python3.6 - --user

때때로 다음과 같은 경고가 표시 될 수 있습니다.

경고 : 스크립트 휠은 PATH에없는 '/home/ubuntu/.local/bin'에 설치됩니다. 이 디렉토리를 PATH에 추가하거나이 경고를 표시하지 않으려면 --no-warn-script-location을 사용하십시오.

확인

이 후 pip, pip3그리고 pip3.6모두 같은 대상을 가리킨 것으로 예상 할 수있다 :

$ (pip -V && pip3 -V && pip3.6 -V) | uniq
pip 18.0 from /usr/local/lib/python3.6/dist-packages (python 3.6)

물론 다른 방법 python3.6 -m pip으로도 사용할 수 있습니다.

$ python3.6 -m pip -V
pip 18.0 from /usr/local/lib/python3.6/dist-packages (python 3.6)

4
이 스크립트는 python3.6setup-tools / 쉬운 설치가 작동 한다고 가정합니다 . 그런 이유로 그것은 나를 위해 작동하지 않았다. 나는curl https://bootstrap.pypa.io/ez_setup.py -o - | python3.6 && python3.6 -m easy_install pip
FirefoxMetzger

나는 설치 python3.6python3.6-dev에서 ppa:jonathonf/python-3.6우분투 14.04에. 설정 도구를 잊어 버렸는지 또는 부러 졌는지 확실하지 않지만 당시에는 작동하지 않았습니다.
FirefoxMetzger 2012

그것은 어떤 식 으로든 당신의 대답을 위조하지 않습니다 =) 누군가가 같은 (희망이 드문) 문제에 부딪 칠 경우를 대비 한 추가 일뿐입니다.
FirefoxMetzger

@ABB 만약 내가 할 pip -Vpython 2.7pip3 -V && pip3.6 -Vpython 3.6내가 할 수있는 방법?
Benyamin Jafari

1
wget -O -결과를 stdout으로 스트리밍 할 수도 있습니다 .wget -O - https://bootstrap.pypa.io/get-pip.py | sudo -H python3.6
ingomueller.net

16

stackoverflow에 대한 답변을 받았습니다.

출처 : https://stackoverflow.com/a/44254088/1812319

Ubuntu 16.04, 16.10 또는 17.04를 실행하는 시스템이 있고 Python 3.6이 기본 Python이되기를 원한다고 가정합니다.

Ubuntu 16.04 LTS를 사용하는 경우 PPA를 사용해야합니다.

sudo add-apt-repository ppa:jonathonf/python-3.6  # (only for 16.04 LTS)

그런 다음 다음을 실행하십시오 (16.10 및 17.04에서 기본적으로 작동 함).

sudo apt update
sudo apt install python3.6
sudo apt install python3.6-dev
sudo apt install python3.6-venv
wget https://bootstrap.pypa.io/get-pip.py
sudo python3.6 get-pip.py
sudo ln -s /usr/bin/python3.6 /usr/local/bin/python3
sudo ln -s /usr/local/bin/pip /usr/local/bin/pip3

# Do this only if you want python3 to be the default Python
# instead of python2 (may be dangerous, esp. before 2020):
# sudo ln -s /usr/bin/python3.6 /usr/local/bin/python

위의 모든 작업을 완료하면 다음 각 쉘 명령이 표시되어야합니다 Python 3.6.1(또는 최신 버전의 Python 3.6).

python --version   # (this will reflect your choice, see above)
python3 --version
$(head -1 `which pip` | tail -c +3) --version
$(head -1 `which pip3` | tail -c +3) --version

1
"pip라는 모듈이 없습니다"
거북은 귀여워

일을 시도 sudo apt get update하고 sudo apt get upgrade명령을 실행하기 전에.
JChris

도와 주셔서 감사합니다; 매우 감사. 이 문제를 해결하는 동안 시스템이 로그인 루프 상태에 있고 가장 쉬운 수정은 재 포맷 / 재설치 인 것처럼 보입니다.
거북은 귀엽다
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.