¿Cómo instalar pip para python 3.7 en Ubuntu 18?

92

EDITAR 18/02: Como todavía no tengo una solución, estoy actualizando lo que sé hasta ahora.

He instalado Python 3.7 con éxito. Puedo instalar módulos usando pip (o pip3) pero esos módulos están instalados en Python 3.6 (viene con ubuntu). Por lo tanto, no puedo importar esos módulos en python 3.7 (no se encuentra un módulo) Python 3.7 no reconoce pip / pip3, por lo que no puedo instalar a través de pip / pip3 Necesito python 3.7

-

He instalado Python 3.7 en mi máquina Ubuntu 18.04. Siguiendo estas instrucciones en caso de que sea relevante:

Descargar: Python 3.7 desde el sitio web de Python [1], en el escritorio y descomprimirlo manualmente, en el escritorio Instalación: Abrir terminal (ctrl + shift + T)

Go to the Extracted folder
$ cd ~/Desktop/Python-3.7.0
$ ./configure
$ make
$ sudo make install

Haciendo Python 3.7 Python predeterminado:

$ sudo vim ~/.bashrc
press i
on the last and new line - Type
alias python= python3.7
press Esc
type - to save and exit vim
:wq
now type
$ source ~/.bashrc

Desde aquí: https://www.quora.com/How-can-I-upgrade-Python-3-6-to-3-7-in-Ubuntu-18-04

He descargado varios módulos pip install modulepero cuando intento importarlos, obtengo unModuleNotFoundError: No module names 'xx'

Así que investigué un poco y aparentemente cuando usé pip para instalar, se instaló en los módulos en la versión anterior de Python. En algún lugar (probablemente una pregunta en SO) encontré una sugerencia para instalar el módulo usando python3.7 -m pip install modulepero luego obtengo /usr/local/bin/python3.7: no module named pip.

Ahora estoy atascado, pip está instalado, pero aparentemente no para Python 3.7. Supongo que si puedo instalar pip para Python 3.7, puedo ejecutar el comando de instalación de pip y obtener los módulos que necesito. Si ese es el caso, ¿cómo puedo instalar pip para python 3.7, ya que ya está instalado?

ZeCarioca
fuente

Respuestas:

119

El comando que está buscando es:

python3.7 -m pip install pip

También me tomó un tiempo sorprendentemente largo para resolverlo. Los documentos al respecto están aquí .

mpenkov
fuente
45
Ya probado, salida: /usr/local/bin/python3.7: no module named pip[Igual para pip3]
ZeCarioca
8
Parece que a su instalación de Python 3.7 le falta pip. Usted podría tratar de instalarlo utilizando: python3.7 -m ensurepip. Además, noté que lo instaló desde la fuente. Si las opciones anteriores no funcionan para usted, quizás intente instalar a través de apt en su lugar apt install python3.7:? El paquete apt viene con el módulo pip instalado.
mpenkov
6
Lo intenté python3.7 -m ensurepip, se instaló pero cuando lo usé python3.7 -m pip install packageobtuve un montón de errores. Como estaba en una máquina virtual, volví antes de instalar Python 3.7 y lo intenté apt install python3.7y luego python3.7 -m pip install package. Ahora todo marcha sin problemas. ¡Gracias!
ZeCarioca
1
por favor corrija su respuesta. Falló. pero esto python3.7 -m pip install pipfunciona bien
Nwawel A Iroume
2
Se supone que debe reemplazar "paquete" con el nombre del paquete que está intentando instalar.
mpenkov
102

Un complemento rápido a la respuesta de mpenkov anterior (no quería que esto se perdiera en los comentarios)

Para mí, primero tuve que instalar pip para 3.6

sudo apt install python3-pip

ahora puedes instalar Python 3.7

sudo apt install python3.7

y luego podría instalar pip para 3.7

python3.7 -m pip install pip

y como beneficio adicional, para instalar otros módulos simplemente prefacio con

python3.7 -m pip install <module>

EDICIÓN 1 (12/2019):

Sé que esto es obvio para la mayoría. pero si quieres Python 3.8, simplemente sustitúyelo python3.8en lugar depython3.7

EDITAR 2 (5/2020):

Para aquellos que pueden actualizar, Python 3.8 está disponible para Ubuntu 20.04 que se lanzó hace unas semanas.

peligroso
fuente
3
Ty! También pip3.7parece funcionar llamar después de completar los pasos.
toster-cx
¿Por qué está sucediendo esto? ¿Alguien puede arrojar luz sobre este extraño comportamiento?
Adrian Forsius
1
Esto también necesitará que la export PATH=$HOME/.local/bin:$PATHcausa python3.7 -m pip install pipponga a pip en$HOME/.local/
manasouza
14

Usé apt-get para instalar python3.7 en ubuntu18.04. Las instalaciones son las siguientes.

  1. instalar python3.7
sudo apt-get install python3.7 
  1. instalar pip3. Cabe señalar que esto puede instalar pip3 para python3.6.
sudo apt-get install python3-pip 
  1. cambie el valor predeterminado de python3 para python3.7. Aquí es donde está la magia, lo que hará que pip3 se refiera a python3.7.
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 1

Espero que funcione para ti.

Kealen
fuente
8

Para instalar todas las versiones de Python admitidas actualmente (Python 3.6 ya está preinstalado), incluido pip para Ubuntu 18.04, haga lo siguiente:

Para instalar python3.5 y python3.7, use el ppa de deadsnakes:

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.5
sudo apt-get install python3.7

Instale python2.7 a través de paquetes de distribución:

sudo apt install python-minimal  # on Ubuntu 18.04 python-minimal maps to python2.7

Para instalar pip use:

sudo apt install python-pip  # on Ubuntu 18.04 this refers to pip for python2.7
sudo apt install python3-pip  # on Ubuntu 18.04 this refers to pip for python3.6
python3.5 -m pip install pip # this will install pip only for the current user
python3.7 -m pip install pip

Lo usé para configurar una cadena CI para un proyecto de Python con tox y Jenkins.

S. Brunner
fuente
6

Combinando las respuestas de @mpenkon y @dangel, esto es lo que funcionó para mí:

  1. sudo apt install python3-pip

  2. python3.7 -m pip install pip

Se requiere el paso n. ° 1 (asumiendo que aún no tiene pip para python3) para que el paso n. ° 2 funcione. Al parecer, usa pip para Python3.6 para instalar pip para Python 3.7.

Beto
fuente
1
Un problema aquí es que sudo apt install python3-pipno garantiza la instalación de python3.7, sino también otras versiones de
python3
Eso es cierto, pero curiosamente por qué parece funcionar (creo; para nada un gurú de Linux). Parece que se necesita algún tipo de enfoque de arranque, ya que no puede usar software que no tiene para instalar software que no tiene. En cualquier caso, funcionó para mí. ¿Tuviste problemas al seguir este enfoque?
bob
En la forma en que no instaló Python 3.7, sí. Definitivamente, el mejor enfoque es usar sudo apt install python3.7considerando Ubuntu 18.04.
manasouza
3

Cuando lo uso apt install python3-pip, obtengo muchos paquetes que se necesitan instalar, pero no los necesito. Entonces, me gusta esto:

apt update
apt-get install python3-setuptools
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
rm -f get-pip.py
JJP
fuente
3

Se pueden utilizar los siguientes pasos:


sudo apt-get -y update
---------
sudo apt-get install python3.7
--------------
 python3.7
-------------
 curl -O https://bootstrap.pypa.io/get-pip.py
-----------------
sudo apt install python3-pip
-----------------
sudo apt install python3.7-venv
-----------------
 python3.7 -m venv /home/ubuntu/app
-------------
 cd app   
----------------
 source bin/activate
Anil Konduru
fuente
sudo apt-get update sudo apt-get -y update sudo apt-get install python3.7 python3.7 curl -O bootstrap.pypa.io/get-pip.py sudo apt install python3-pip sudo apt install python3.7- venv python3.7 -m venv / home / ubuntu / app cd app ---- source bin /
enable
1

Para aquellos que tengan la intención de usar venv:

Si aún no tiene pipPython 3:

sudo apt install python3-pip

Instalar venvpaquete:

sudo apt install python3.7-venv

Cree un entorno virtual (que se iniciará de forma pippredeterminada):

python3.7 -m venv /path/to/new/virtual/environment

Para activar el entorno virtual, sourceel script apropiado para el shell actual, desde el bindirectorio del entorno virtual. Los scripts apropiados para los diferentes shells son:

bash / zsh - activate

pez - activate.fish

csh / tcsh - activate.csh

Por ejemplo, si usa bash:

source /path/to/new/virtual/environment/bin/activate

Opcionalmente, para actualizar pippara el entorno virtual (mientras está activado):

pip install --upgrade pip

Cuando desee desactivar el entorno virtual:

deactivate 
James T
fuente
1

Instalé pip3usando

python3.7 -m pip install pip

Pero al usar pip3para instalar otras dependencias, estaba usando python3.6.
Puede comprobar el escribiendopip3 --version

Por lo tanto, usé pip3así (indicado en una de las respuestas anteriores):

python3.7 -m pip install <module>

o utilícelo así:

python3.7 -m pip install -r requirements.txt

Hice un alias de bash para usarlo más tarde en el archivo ~ / .bashrc como alias pip3='python3.7 -m pip'. Si usa un alias, no olvide hacerlo source ~/.bashrcdespués de realizar los cambios y guardarlo.

Sunil Kumar Singh
fuente
0

Instalar los requisitos previos de Python

sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget

Instalar python 3.7 (desde el repositorio de ppa)

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.7

Instalar pip3.7

sudo apt install python3-pip
python3.7 -m pip install pip

Crea alternativas de python y pip

sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.7 10
sudo update-alternatives --install /usr/local/bin/pip pip /home/your_username/.local/bin/pip3.7 10

Hacer cambios

source ~/.bashrc
python --version
pip --version
Marvin Correia
fuente
0

¿Qué tal simplemente

add-apt-repository ppa:deadsnakes/ppa
apt-get update
apt-get install python3.7-dev
alias pip3.7="python3.7 -m pip"

Ahora tienes el comando

pip3.7

por separado de pip3.

El Sampsa
fuente
-3

pip3no pip. Puede crear un alias como lo hizo con python3si lo desea.

Patrick Conwell
fuente
Mismo problema. /usr/local/bin/python3.7: no module named pip3
ZeCarioca
en su terminal, escriba $ which pipy $ which pip3y vea lo que dicen ambos.
Patrick Conwell
/usr/bin/pipy/usr/bin/pip3
ZeCarioca
Bien, ¿qué estás escribiendo exactamente en la terminal para ver el error no module named pip3o lo que sea?
Patrick Conwell
python3.7 -m pip3 install psycopg2. Si solo lo uso pip3 install psycopg2, descarga el módulo, pero todavía no puedo importarlo en Python 3.7.
ZeCarioca