update python3 podido paquete localizar instalar python-3.x ubuntu pip install

python-3.x - python3 - ubuntu 18.04 python version



¿Cómo instalar pip para Python 3.6 en Ubuntu 16.10? (4)

Me gustaría comenzar señalando que esta pregunta puede parecer un duplicado, pero no lo es. Todas las preguntas que vi aquí fueron sobre pip para Python 3 y estoy hablando de Python 3.6. Los pasos utilizados en ese momento no funcionan para Python 3.6.

  1. Obtuve una imagen clara de Ubuntu 16.10 en la tienda de docker oficial .
  2. Ejecute apt-get update
  3. Ejecute apt-get install python3.6
  4. Ejecute apt-get install python3-pip
  5. Ejecute las pip3 install requests bs4
  6. Ejecute python3.6 script.py

ModuleNotFoundError continuación:

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

Python''s y pip''s que tengo en la máquina:

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


Al menos en ubuntu 16.10, el python3 predeterminado es python3.5 . Como tal, todos los python3-X se instalarán para python3.5 y no para python3.6.

Puede verificar esto revisando el shebang de pip3 :

$ head -n1 $(which pip3) #!/usr/bin/python3

Afortunadamente, el pip instalado por el paquete python3-pip se instala en el "shared" /usr/lib/python3/dist-packages para que python3.6 también lo pueda aprovechar.

Puede instalar paquetes para python3.6 haciendo:

python3.6 -m pip install ...

Por ejemplo:

$ python3.6 -m pip install requests $ python3.6 -c ''import requests; print(requests.__file__)'' /usr/local/lib/python3.6/dist-packages/requests/__init__.py


Esta respuesta asume que ya tienes instalado python3.6 .

Con respecto a la instalación de pip , el uso de curl (en lugar de wget ) evita escribir el archivo en el disco.

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

Después de esto, se puede esperar que pip , pip3 y pip3.6 apunten al mismo objetivo:

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

Por supuesto, también puedes usar python3.6 -m pip .

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


Este sitio web contiene una solución mucho más limpia, deja pip intacto como así y uno puede cambiar fácilmente entre 3.5 y 3.6 y luego cuando se libera 3.7.

http://ubuntuhandbook.org/index.php/2017/07/install-python-3-6-1-in-ubuntu-16-04-lts/

Un breve resumen:

sudo apt-get install python python-pip python3 python3-pip sudo add-apt-repository ppa:jonathonf/python-3.6 sudo apt-get update sudo apt-get install python3.6 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2

Entonces

$ pip -V pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7) $ pip3 -V pip 8.1.1 from /usr/local/lib/python3.5/dist-packages (python 3.5)

Luego, para seleccionar Python 3.6 run

sudo update-alternatives --config python3

y seleccione ''2''. Entonces

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

Para actualizar pip, seleccione la versión deseada y

pip3 install --upgrade pip $ pip3 -V pip 9.0.1 from /usr/local/lib/python3.6/dist-packages (python 3.6)

Probado en Ubuntu 16.04.


Supongamos que tiene un sistema que ejecuta Ubuntu 16.04, 16.10 o 17.04, y desea que Python 3.6 sea el Python predeterminado.

Si está utilizando Ubuntu 16.04 LTS, necesitará usar un PPA:

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

A continuación, ejecute lo siguiente (esto funciona de fábrica en 16.10 y 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

Cuando haya completado todo lo anterior, cada uno de los siguientes comandos de shell debe indicar Python 3.6.1 (o una versión más reciente de 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