Eu preciso ser capaz de alternar entre Python 2 e 3. Como faço isso usando o Homebrew, pois não quero mexer no caminho e ter problemas. No momento, tenho o 2.7 instalado pelo Homebrew.
Eu preciso ser capaz de alternar entre Python 2 e 3. Como faço isso usando o Homebrew, pois não quero mexer no caminho e ter problemas. No momento, tenho o 2.7 instalado pelo Homebrew.
Respostas:
Eu usaria o pyenv. Você pode instalá-lo:
$ brew install pyenv
Para habilitar o pyenv no seu shell Bash, você precisa executar:
$ eval "$(pyenv init -)"
Para fazer isso automaticamente no Bash na inicialização, adicione essa linha ao seu ~/.bash_profile
. 1
Depois de instalar o pyenv e ativá-lo, você pode instalar versões diferentes do python e escolher qual delas pode ser usada. Exemplo:
$ pyenv install 2.7.5
Você pode verificar as versões com as quais instalou:
$ pyenv versions
E você pode alternar entre versões python com o comando:
$ pyenv global 3.3.1
Além disso, você pode definir uma versão python para o diretório atual com:
$ pyenv local 3.5.2
Você pode verificar executando python --version
:
$ python --version
Python 3.5.2
1 O Homebrew costumava instruí-lo a fazer isso após a instalação do pyenv, mas a mensagem foi removida . Para o Zsh e outras conchas, as etapas precisas podem ser diferentes.
eval "$(pyenv init -)"
ao meu .profile / .zshrc para fazer o pyenv funcionar.
eval "$(pyenv init -)"
ao seu ~ / .bash_profile
Você pode ter as duas versões instaladas ao mesmo tempo.
Desde 1º de março de 2018, a python
fórmula será atualizada para o Python 3.x, enquanto uma nova python@2
fórmula será adicionada para o Python 2.7, especificamente.
Veja o anúncio de alterações aqui ou o documento final sobre o uso do Homebrew for Python aqui .
Para Python 2.x:
brew install python
Para Python 3.x:
brew install python3
Agora, você terá as duas versões instaladas em sua máquina. Quando você deseja usar a versão 2, use o python
executável. Quando você quiser usar a versão 3, use o python3
executável.
PYTHONPATH
a cada alteração ... alguma idéia? além disso, pyenv
é ótimo.
python3 -m pip install -U --force-reinstall pip
depois refazendopython -m pip install -U --force-reinstall pip
as pip
referências ao Python 2 pip
.
Atualmente, o Homebrew fornece duas fórmulas diferentes para Python 2 e 3. brew install python
instala python3 e brew install python@2
instala python2. Mais detalhes nos documentos do Homebrew:
https://docs.brew.sh/Homebrew-and-Python
Se você atualmente possui o 2.x instalado via Homebrew, o Homebrew enviará uma mensagem como:
Error: python 2.7.14 is already installed
To upgrade to 3.6.5, run `brew upgrade python`
Se você executar:
brew upgrade python
você deve ser capaz de fazer:
python --version
e
python3 --version
Para ver quais versões do Python 2.xe 3.x instalaram.
Como alternativa, você provavelmente pode simplesmente digitar "python3" para executar a versão mais atual do python3.xe "python" ou "python2" para executar a versão 2.x mais recente instalada.
Existem maneiras de usar os dois, mas a solução mais simples hoje é usar pyenv . O pyenv permite alternar facilmente entre as versões. Aqui está o que eu fiz para configurar:
PASSO 1:
Remova todos os pythons do seu mac
brew uninstall --ignore-dependencies --force python
sudo rm -rf ~/miniconda3/
sudo rm -rf ~/.conda/
Remova o seguinte de ~/.bash_profile
export PATH="/Users/ishandutta2007/miniconda3/bin:$PATH"
e também o seguinte de ~/.bashrc
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH export PYTHONPATH=/usr/local/lib/python2.7/site-packages/google:$PYTHONPATH alias python="/usr/bin/python"
PASSO 2 :
Instale o pyenv e as versões python necessárias
brew update
brew install pyenv
pyenv install 2.7
pyenv install 3.7.0
PASSO 3 :
adicionar pyenv init
a bash_profile
oubashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
PASSO 4 :
Verifique o que foi instalado
pyenv versions
sistema (definido por /Users/ishandutta2007/.pyenv/version)
2.7
3.7.0
PASSO 5:
Escolha um padrão
pyenv global 3.7.0
Quando um projeto precisar de uma versão mais antiga, basta acessar sua pasta raiz e executar
pyenv local 2.7
Balada de asdf
Era uma vez uma linguagem de programação.
Havia muitas versões.
Então, as pessoas escreviam um gerenciador de versões para ele.
Para alternar entre versões de projetos.
Diferentes, antigas, novas.Então vieram mais linguagens de programação
Então vieram mais gerenciadores de versão
E muitos comandos para elesEu instalei muitos deles
, aprendi muitos comandosEntão eu disse, apenas mais um gerenciador de versão,
que eu escrevereiEntão, veio outro gerenciador de
versões asdf version manager - https://github.com/asdf-vm/asdfUm gerenciador de versões tão extensível
para o qual qualquer um pode criar um plug-in
Para suportar seu idioma favorito
Não é mais necessário instalar mais gerenciadores de versão
Ou aprender mais comandos
https://github.com/asdf-vm/asdf
https://github.com/tuvistavie/asdf-python
https://github.com/asdf-vm/asdf-plugins
Eu pensei que tinha o mesmo requisito - para alternar entre versões do Python -, mas consegui tudo o que precisava com apenas o Python3.6 construindo a partir do código-fonte em vez de usá-lo homebrew
.
git clone https://git.<theThingYouWantToInstall>
Dependendo do repositório, verifique se o arquivo MAKE já está configurado para esta opção.
Consegui acessar https://www.python.org/downloads/mac-osx/ e baixar o último python. Ele instalou ao lado do python atual no meu sistema.
Ok, eu estava lutando com minha instalação de fermentação do Python3, porque não tinha o pip3
sudo pip3 command not found
e eu fiz
brew uninstall --force --ignore-dependencies python3
e instalei o Python regular 3.6.2 da distribuição oficial e, em seguida, tive o pip3 e todos os componentes estavam ok.