Como usar o pip com o Python 3.x ao lado do Python 2.x


196

Eu instalei o Python 3.x (além do Python 2.x no Ubuntu) e lentamente comecei a emparelhar os módulos que uso no Python 2.x.

Então, eu me pergunto, que abordagem devo adotar para facilitar minha vida usando o pip para o Python 2.xe o Python 3.x?


2
Pessoalmente, evitaria a instalação global de pacotes e usaria o virtualenv. Em seguida, você usa o pip de dentro do seu ambiente virtual para cada projeto e sempre usa o correto.
precisa saber é

Respostas:


183

A abordagem que você deve seguir é instalar o pipPython 3.2.

Você faz isso da seguinte maneira:

$ curl -O https://bootstrap.pypa.io/get-pip.py
$ sudo python3.2 get-pip.py

Em seguida, você pode instalar coisas para o Python 3.2 com pip-3.2e instalar coisas para o Python 2-7 com pip-2.7. O pipcomando acabará apontando para um deles, mas não tenho certeza qual, então você terá que verificar.


9
Isso foi fácil, obrigado. sudo python3.2 get-pip.pyinstala pipe pip-3.2scripts /usr/local/bine usa logicamente o Python 3. sudo python get-pip.pyinstala pipe pip-2.7aqui, portanto, neste caso, pipusa o Python 2.7. Eu criei um link adicional para pip-3.2as pip3e testei: Perfect! :)
teta

6
No Fedora, é o pip3.3, ou seja, sem o traço entre o pip e a versão. Verifique /usr/binpara ver quais versões de pip você tem lá.
Shailen 31/07

5
O Ubuntu também está usando [ pip2 | pip2.7 | pip3 | pip3.4 ]. Isso é uma mudança pipou é diferente entre sistemas diferentes?
Jon Surrell

Depois de executar eu tenhoYou're using an outdated location for the get-pip.py script, please use the one available from https://bootstrap.pypa.io/get-pip.py
Kevin Brotcke

Então faça isso então. :-)
Lennart Regebro 03/02

53

O que você também pode fazer é usar o apt-get:

apt-get install python3-pip

Na minha experiência, isso também é bastante fluente, além de você obter todos os benefícios do apt-get.


2
Em 12.04, não posso fazer isso.
dranxo

15
Eu usei isso com sucesso (ou seja, sudo apt-get install python3-pip) e, em seguida, pude instalar pacotes python3 usando "sudo python3 -m pip install package".
precisa

2
A partir de hoje, acredito que o apt-get fornece a versão 1.5.6 desatualizada; se você não quiser um AssertionErrror durante pip freeze > requirements(ou outros possíveis erros), instale a partir da fonte para a versão mais recente e economize um pouco de dor de cabeça.
Yibo Yang

deve ser root para instalarpython3-pip
Florent

Apesar de a instalação pipusando python3.7 pipainda estar sendo usada como padrão no Python 2.7 no ubuntu 14.04 :( Consegui atualizar o pip para a versão mais recente, isto é, 19.3.1, mas ainda está assumindo o padrão para python2.7. ?
Curious Developer

48

Primeiro, instale o Python 3 pip usando:

sudo apt-get install python3-pip

Então, para usar Python 3 pipuse:

pip3 install <module-name>

Para Python 2 pipuso:

pip install <module-name>

4
Não há pip Python 2, isso depende do sistema operacional que você está usando. Por exemplo, nos pip --versionestados do Arch Linux que estão sendo executados no python 3.6 por padrão.
Daniel Andrei Mincă

essa parece a solução mais intuitiva e fácil para mim, obrigado!
gebbissimo 12/03/19

15

Se você não quiser especificar a versão sempre que usar o pip :

Instale o pip:

$ curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python3

e exporte o caminho:

$ export PATH=/Library/Frameworks/Python.framework/Versions/<version number>/bin:$PATH

11
Você poderia elaborar? Não vejo como a instalação da distribuição tem nada a ver com não precisar especificar a versão do pip que você deseja usar.
Piotr Dobrogost

13

O caminho mais curto:

python3 -m pip install package
python -m pip install package

`` (test-exif) alex @ alex-xps-13-9370: ~ / projects / oe / app / exif $ python3 -m pip install exif / usr / bin / python3: nenhum módulo chamado pip `` `
axd

@axd, nesse caso, primeiro instale o pip usando sudo apt-get install python3-pip. Supondo que você esteja usando python3.
Fiveelements 19/08/19

5

Isso funcionou para mim no OS X: (digo isso porque às vezes é uma dor que o mac tenha uma versão "própria" de todas as ferramentas de código-fonte aberto, e você não pode removê-lo porque "suas melhorias" o tornam único para que outras coisas da apple funcionem e se você removê-lo, as coisas começam a cair)

Eu segui as etapas fornecidas pelo @Lennart Regebro para obter o pip para python 3, no entanto, o pip para python 2 ainda era o primeiro no caminho, então ... o que fiz foi criar um link simbólico para o python 3 dentro de / usr / bin ( de fato, fiz o mesmo para ter meus 2 pitães correndo em paz):

ln -s /Library/Frameworks/Python.framework/Versions/3.4/bin/pip /usr/bin/pip3

Observe que eu adicionei um 3no final, então basicamente o que você precisa fazer é usar em pip3vez de apenas pip.

O post é antigo, mas espero que isso ajude alguém algum dia. teoricamente, isso deve funcionar para qualquer sistema LINUX.


4

No Suse Linux 13.2, o pip chama python3, mas o pip2 está disponível para usar a versão mais antiga do python.


o mesmo em voidlinux
Radagast

4

No Windows, primeiro instalei o Python 3.7 e depois o Python 2.7. Em seguida, use o prompt de comando:

pip instala python2-module-name

pip3 instala python3-module-name

Isso é tudo


3

Observe que no msys2 eu achei esses comandos úteis:

$ pacman -S python3-pip
$ pip3 install --upgrade pip
$ pip3 install --user package_name

2

Pensei que esta é uma pergunta antiga, acho que tenho uma solução melhor

  1. Para usar o pip em um ambiente python 2.x, use este comando -

    py -2 -m pip install -r requirements.txt

  2. Para usar o pip para o ambiente python 3.x, use este comando -

    py -3 -m pip install -r requirements.txt

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.