Python várias versões na mesma máquina — Instalando da forma correta

Pedro Lucas Lima
Codando na Prática
3 min readAug 20, 2021

--

Atualmente os devs andam atuando em diversos projetos ao mesmo tempo e logo se deparam com um problema que na maioria das vezes é um pouco chato de resolver, mas hoje, eu vou apresentar aqui pra vocês a forma correta (pelo menos no meu ponto de vista) de gerenciar versões dentro do seu sistema operacional — SO, vamos lá?

O primeiro de tudo você deve instalar o pyenv, ele é um gerenciador de virtualenvs do python e com ele você também pode gerenciar as versões do python que o seu sistema operacional está operando.

Se você usa MacOS:

Se você usa sistema operacional MacOS, vamos utilizar o brew para instalar o pyenv. Você pode executar o seguinte comando no seu terminal:

> brew install pyenv

Se você usa Linux, ChromeOS e Windows WSL2 — (ubuntu, mint, debian):

Se você usar sistema operacional Linux, ChromeOS ou Windows WLS2 com distros mencionadas acima, você pode executar o seguinte comando no seu terminal, primeiramente vamos atualizar os plugins necessários para o funcionamento correto do pyenv e posteriormente iremos clonar o projeto para a máquina:

> sudo apt update -y 
> sudo apt install curl git-core gcc make zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev
> git clone https://github.com/pyenv/pyenv.git ~/.pyenv

Configurando seu SO para visualizar o pyenv:

Depois de ter instalado o pyenv no seu sistema operacional, vamos configurar o seu SO para que seja utilizada as versões do python baixado pelo pyenv. Para isso siga os seguintes comandos:

Se você utiliza o BASH execute esses comandos:

> echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc> echo 'export PATH="$PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc> echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bashrc> source ~/.bashrc

Se você utilizar o ZSH execute esses comandos:

> echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc> echo 'export PATH="$PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc> echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshrc> source ~/.zshrc

Pronto, agora o seu SO está configurado para ter seu python gerenciado pelo pyenv.

Para ver as suas versões no OS execute o seguinte comando:

> pyenv versions# Saída do comando* system

Para instalar uma nova versão é muito simples, apenas execute:

# pyenv install <python_version> > pyenv install 3.9.6

Aguarde o download e a instalação do pacote, e depois disso, para você usar essa versão no seu SO apenas execute:

> pyenv global 3.9.6

Prontinho, o seu SO está olhando pra versão 3.9.6 do python, é só executar:

python --version# Saída do comandoPython 3.9.6

Ou poderá consultar pela linha de comando do pyenv:

pyenv versions# Saída do comando  system
* 3.9.6 (set by /Users/pedrolucaslima/.pyenv/version)

É isso galera, espero ter ajudado vocês a configurarem da melhor forma a versão do python que você precisará para um determinado projeto. Vlww!

--

--