Existe alguma maneira de pip
jogar bem com várias versões do Python? Por exemplo, eu quero usar pip
para instalar explicitamente coisas na instalação do meu site 2.5 ou do meu site 2.6.
Por exemplo, com easy_install
, eu uso easy_install-2.{5,6}
.
E sim - eu sei sobre virtualenv e não - não é uma solução para esse problema em particular.
pip34
epip35
?pip3.x
na verdade gere a versão python na qual você deseja instalar os pacotes (talvez executepip3.x -V
para ver). Ou use a solução da @ Hugo para ter um melhor controle sobre várias versões de python.Respostas:
A recomendação atual é usar
python -m pip
, ondepython
está a versão do Python que você gostaria de usar. Essa é a recomendação, pois funciona em todas as versões do Python e em todas as formas de virtualenv. Por exemplo:Resposta anterior, deixada para a posteridade:
Desde a versão 0.8, o Pip suporta
pip-{version}
. Você pode usá-lo da mesma forma queeasy_install-{version}
:EDIT : pip mudou seu esquema para usar em
pipVERSION
vez depip-VERSION
na versão 1.5. Você deve usar o seguinte se tiverpip >= 1.5
:Verifique https://github.com/pypa/pip/pull/1053 para obter mais detalhes
Referências:
fonte
pip
viapip
/easy_install
ouget-pip.py
ou você não tem python2.7. se você tem python2.7, tente:pip install --upgrade pip
e você deve terpip
epip-2.7
pip
é escolhido com base na variável de ambiente $ PATH. Se você deseja alterar o que é o programa pip "padrão", reordene a variável de ambiente $ PATH. Procure algo como "path environment variable linux" para obter mais detalhes sobre $ PATH.No Windows, você pode executar o módulo pip usando uma determinada versão Python através do Python lançador ,
py.exe
, se você escolheu para instalá-lo durante a instalação do Python 3.Você pode ser ainda mais específico e solicitar uma sub-versão exata do Python:
Para obter uma lista de todas as versões instaladas do Python disponíveis no iniciador, execute:
Como alternativa, você pode iniciar o executável Python desejado diretamente:
fonte
python2
,python3
,pip2
epip3
no Windows?/path/to/python2.{5,6} /path/to/pip install PackageName
não funciona?Para que isso funcione em qualquer versão python que ainda não tenha o pip instalado, você precisa fazer o download do pip e fazer
python*version* setup.py install
. Por exemplopython3.3 setup.py install
. Isso resolve o erro de importação nos comentários. (Como sugerido por @hbdgaf)fonte
python2.7 -m pip install PackageName
Eu tinha o python 2.6 instalado por padrão (Amazon EC2 AMI), mas precisava do python2.7 mais alguns pacotes externos para o meu aplicativo. Supondo que você já instalou o python2.7 junto com o python padrão (2.6 no meu caso). Aqui está como instalar pip e pacotes para python2.7 não padrão
Instale o pip para sua versão python:
Use uma versão específica do pip para instalar pacotes:
fonte
python3 get-pip.py
e mais tarde usando o comando pip compip34 install example
Could not find a version that satisfies the requirement pip (from versions: ) No matching distribution found for pip
quando eu tenteipython2.6 get-pip.py
Funcionou para mim no Windows desta maneira:
Alterei o nome dos arquivos python python.py e pythonw.exe para python3.py pythonw3.py
Então eu apenas executei este comando no prompt:
python3 -m pip install package
fonte
Outras respostas mostram como usar o pip no Python 2.X e 3.X, mas não mostram como lidar com o caso de várias distribuições Python (por exemplo, Python original e Anaconda Python) .
Eu tenho um total de 3 versões do Python: Python original 2.7 e Python 3.5 e Anaconda Python 3.5.
Aqui está como eu instalo um pacote em:
Python original 3.5 :
Python original 2.7 :
Anaconda Python 3.5 :
ou
Mais simples, pois o Anaconda substitui os binários Python originais no ambiente do usuário.
Obviamente, a instalação no anaconda deve ser feita com o
conda
comando, este é apenas um exemplo.Além disso, verifique se o pip está instalado para esse python específico. Talvez seja necessário instalar o pip manualmente. Isso funciona no Ubuntu 16.04:
ou
fonte
Eu me deparei com esse problema recentemente e descobri que não estava obtendo o pip certo para o Python 3, no meu sistema Linux que também possui o Python 2.
Primeiro, você deve garantir que instalou o pip para sua versão python:
Para Python 2:
Para Python 3:
Em seguida, para instalar pacotes para uma versão do Python ou outra, basta usar o seguinte para o Python 2:
ou para Python 3:
fonte
pip também é um pacote python. Portanto, a maneira mais fácil de instalar módulos em uma versão python específica seria abaixo
ou
fonte
Então, aparentemente, existem várias versões de
easy_install
epip
. Parece ser uma grande bagunça. Enfim, foi o que fiz para instalar o Django para Python 2.7 no Ubuntu 12.10:fonte
A partir daqui: https://docs.python.org/3/installing/
Aqui está como instalar pacotes para várias versões instaladas ao mesmo tempo linux, mac, posix :
No Windows , use o iniciador py Python em combinação com a opção -m:
fonte
pipenv
No Linux, Mac OS X e outros sistemas POSIX, use os comandos Python com versão em combinação com o
-m
switch para executar a cópia apropriada depip
:(comandos pip com versão apropriada também podem estar disponíveis)
No Windows, use o
py
iniciador Python em combinação com a-m
opção:se você receber um erro
py -3.4
, tente:fonte
Instalação de várias versões do Python e respectivos pacotes.
Versão Python na mesma máquina Windows: 2.7, 3.4 e 3.6
Instalação das 3 versões do Python :
PATH para todas as 3 versões do Python :
Renomeando os executáveis para versões :
Verificado o prompt de comando com todas as versões:
Instalando os pacotes separadamente para cada versão
fonte
Se você possui várias versões e arquiteturas (32 bits, 64 bits), será necessário adicionar -32 ou -64 no final da sua versão.
Para o Windows, vá para cmd e digite py --list e ele produzirá as versões que você instalou. A lista terá a seguinte aparência:
O comando completo como exemplo será:
Se você deseja obter mais informações, para instalar uma versão específica de um pacote em uma versão específica do python, use == (version) após o pacote. Como um exemplo,
fonte
A maioria das respostas aqui aborda o problema, mas quero acrescentar algo que estava constantemente me confundindo com relação à criação de uma instalação alternativa de python no
/usr/local
CentOS 7. Quando eu instalei lá, parecia que o pip estava funcionando, pois eu poderia usarpip2.7 install
e instalaria módulos. No entanto, o que eu não conseguia descobrir era por que minha versão recém-instalada do python não estava vendo o que eu estava instalando.Acontece no CentOS 7 que já existe um python2.7 e um pip2.7 na
/usr/bin
pasta. Para instalar o pip para sua nova distribuição python, você precisa dizer especificamente ao sudo para ir para/usr/local/bin
Isso deve ter o pip2.7 instalado na sua
/usr/local/bin
pasta junto com a sua versão do python. O truque é que, quando você deseja instalar os módulos, você precisa modificar a$PATH
variável sudo para incluir/usr/local/bin
ou executarse você deseja instalar um novo módulo. Levei uma eternidade para lembrar que
sudo
não estava vendo imediatamente/usr/local/bin
.fonte
Aqui está a minha opinião sobre o problema. Funciona para Python3. As principais características são:
Os passos são os seguintes:
Se você tiver várias versões python extras instaladas de alguma outra maneira, livre-se delas, por exemplo, remova $ HOME / .local / lib / python3.x , etc. (também as instaladas globalmente). Não toque na versão python3 padrão do seu sistema.
Faça o download do código-fonte para diferentes versões do python na seguinte estrutura de diretórios:
Em cada diretório "Python-3.xy /", faça o seguinte ( NÃO use "sudo" em nenhuma das etapas!):
Em "python_versions /", crie arquivos como este:
Agora, sempre que desejar optar pelo python3.x, faça
para entrar no virtualenv
Enquanto estiver no virtualenv, instale seus pacotes python favoritos com
Para sair da versão virtualenv e python, digite "deactivate"
ATUALIZAR
Parece que
--no-site-packages
está obsoleto. Existe uma solução fácil para isso: depois de ativar o virtualenv, basta apontar a variável env para outro local que não seja o diretório pessoal atual, ou seja:Uma boa maneira de fazer isso em geral é:
ln -s $HOME/.local/lib/python3.6/site-packages/numpy $PWD/venv/lib/python3.6/site-packages/
export PYTHONPATH=
,export HOME=/some/other/dir
Agora você deve ter virtualenv isolado personalizado.
fonte
Contexto: Archlinux
Ação:
Instale python2-pip:
sudo pacman -S python2-pip
Agora você tem o pip2.7:
sudo pip2.7 install boto
Teste (no meu caso, eu precisava do 'boto'):
Execute os seguintes comandos:
Sucesso: nenhum erro.
Sair: Ctrl+D
fonte
por exemplo, se você definir outras versões (por exemplo, 3.5) como padrão e desejar instalar o pip para python 2.7:
fonte
Você pode ir para, por exemplo, C: \ Python2.7 \ Scripts e, em seguida, executar o cmd a partir desse caminho. Depois disso, você pode executar o pip2.7 instalar o seu pacote ...
Isso instalará o pacote para essa versão do Python.
fonte
Esta é provavelmente a coisa completamente errada a fazer (eu sou um noob python), mas eu apenas entrei e editei o arquivo pip
fonte
Para o Windows especificamente: \ path \ to \ python.exe -m pip install PackageName funciona.
fonte
para o Blender:
fonte