Como Verificar e Trocar Versões do Python no Ubuntu: Guia Completo para Desenvolvedores

1. Introdução

Ao usar Python no Ubuntu, gerenciar versões do Python torna‑se uma tarefa importante.
O Python recebe novas versões com frequência e, dependendo do ambiente de desenvolvimento, pode ser necessário usar versões diferentes.

No entanto, o Ubuntu pode ter várias versões do Python instaladas, levando a situações como:
“Quero verificar a versão atual do Python”
“Quero usar uma versão específica”
“Quero trocar de versão do Python”
Essas situações ocorrem com bastante frequência.

Este artigo explica detalhadamente como verificar, alterar e trocar versões do Python no Ubuntu.
Com exemplos de comandos incluídos, até iniciantes podem acompanhar facilmente. Certifique‑se de ler até o final.

2. Como Verificar a Versão do Python no Ubuntu【Experimente Agora!】

Primeiro, vamos ver como verificar qual versão do Python está atualmente instalada no Ubuntu.

2.1 A Maneira Mais Fácil (Verifique em 1 Segundo)

A maneira mais simples de verificar sua versão do Python no Ubuntu é executar o seguinte comando no terminal:

python3 --version

Você pode obter o mesmo resultado usando:

python3 -V

Exemplo:

$ python3 --version
Python 3.10.6

Isso exibe a versão atual do Python.

2.2 Diferença Entre python --version e python3 --version

No Ubuntu, o comando python pode referir‑se ao Python 2.
Portanto, recomenda‑se usar python3 --version.

Você pode verificar se o python está instalado executando:

python --version

Se você vir Command 'python' not found, isso provavelmente significa que apenas o Python 3 está instalado.

2.3 Obter Informações Detalhadas da Versão

Se quiser informações mais detalhadas, execute:

python3 -VV

Exemplo:

$ python3 -VV
Python 3.10.6 (main, Jan 16 2024, 11:25:20) [GCC 11.2.0]

Este comando mostra detalhes como a versão do GCC usada na compilação e a data de construção.

2.4 Verificar a Versão do Python Dentro de um Script

Se quiser verificar a versão do Python a partir de um script, use o módulo sys:

import sys
print(sys.version)
print(sys.version_info)

Exemplo:

$ python3 script.py
3.10.6 (main, Jan 16 2024, 11:25:20) [GCC 11.2.0]
sys.version_info(major=3, minor=10, micro=6, releaselevel='final', serial=0)

Usando sys.version_info, você pode obter cada elemento da versão (major, minor, micro) como números.

3. Como Alterar ou Gerenciar Versões do Python【Definir Padrão do Sistema】

O Ubuntu pode ter várias versões do Python instaladas.
Esta seção explica como alterar a versão padrão do Python em todo o sistema.

3.1 Verificar Versões do Python Instaladas

Para verificar quais versões do Python estão instaladas, execute:

ls /usr/bin/python*

Exemplo:

$ ls /usr/bin/python*
/usr/bin/python3  /usr/bin/python3.8  /usr/bin/python3.10

Se várias versões estiverem instaladas, você pode escolher qual usar como padrão.

3.2 Trocar o Python Padrão Usando update-alternatives

Você pode trocar a versão padrão do Python usando update-alternatives.

Primeiro, verifique as configurações atuais:

sudo update-alternatives --display python

Se python não estiver registrado, adicione‑o com:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.10 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 2

Em seguida, escolha a versão padrão:

sudo update-alternatives --config python

Exemplo:

There are 2 choices for the alternative python (providing /usr/bin/python).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.10  1         auto mode
  1            /usr/bin/python3.10  1         manual mode
  2            /usr/bin/python3.8   2         manual mode

Press <enter> to keep the current choice[*], or type selection number:

Digite o número da versão para a qual deseja mudar.

3.3 Alterar Manualmente o Link Simbólico

Você também pode alterar manualmente o link simbólico em vez de usar update-alternatives:

sudo ln -sf /usr/bin/python3.10 /usr/bin/python

Isso força o comando python a usar o python3.10 em todo o sistema.

4. Como Alternar Versões do Python por Projeto

Ao trabalhar com Python no Ubuntu, pode ser necessário usar versões diferentes do Python para projetos diferentes.
Por exemplo, um projeto pode exigir Python 3.10, enquanto outro pode precisar de Python 3.8.
Nesses casos, usar ambientes virtuais (venv) ou pyenv é extremamente útil.

Esta seção explica como alternar facilmente as versões do Python usando ambientes virtuais e pyenv.

4.1 Gerenciar Versões do Python por Ambiente Usando venv

O Python fornece venv (ambientes virtuais) como recurso padrão.
Ao usar ambientes virtuais, você pode gerenciar diferentes versões do Python ou bibliotecas dentro de diretórios individuais.

Criar um Ambiente Virtual com venv

Navegue até o diretório onde deseja criar um ambiente virtual e execute:

python3 -m venv myenv

Isso cria um ambiente virtual chamado myenv.

Ativar o Ambiente Virtual

Para ativar o ambiente virtual, execute:

source myenv/bin/activate

Depois de ativado, o prompt do terminal muda:

(myenv) user@ubuntu:~/project$

Enquanto estiver ativo, a versão do Python específica do ambiente será usada.

Verificar a Versão do Python Dentro do Ambiente

Para verificar a versão do Python dentro do ambiente virtual, execute:

python --version

Desativar o Ambiente Virtual

Para sair do ambiente virtual, execute:

deactivate

Usando este método, você pode gerenciar versões e pacotes do Python independentemente para cada projeto.

4.2 Gerenciar Versões do Python Usando pyenv

Enquanto o venv gerencia o Python por projeto,
se você quiser alternar livremente a versão do Python em todo o sistema, o pyenv é muito conveniente.

Instalar o pyenv

Primeiro, instale o pyenv.
Para instalar o pyenv no Ubuntu, execute:

curl https://pyenv.run | bash

Em seguida, aplique as configurações com:

exec $SHELL

Instalar Versões do Python com pyenv

Para instalar uma versão do Python usando o pyenv:

pyenv install 3.10.6

Para listar todas as versões disponíveis:

pyenv install --list

Alternar Versões do Python com pyenv

Para mudar a versão global (em todo o sistema) do Python:

pyenv global 3.10.6

Para mudar a versão do Python para um diretório específico:

pyenv local 3.8.10

Verificar a Versão Atual do Python Gerenciada pelo pyenv

Para verificar quais versões do Python o pyenv está gerenciando, execute:

pyenv versions

Isso permite que você gerencie facilmente diferentes versões do Python por projeto.

5. FAQ (Resolução de Problemas)

Aqui estão perguntas comuns e dicas de solução de problemas ao gerenciar versões do Python no Ubuntu.

Q1: Qual a diferença entre python e python3?

No Ubuntu, python3 é o padrão, enquanto python pode referir‑se ao Python 2.
Portanto, é recomendado usar python3 --version.

Q2: E se python --version mostrar uma versão inesperada?

Você pode mudar a versão padrão do Python com update-alternatives ou pyenv.

  • Usando update-alternatives :
    sudo update-alternatives --config python
    
  • Usando pyenv :
    pyenv global 3.10.6
    

Q3: Por que python3 --version funciona, mas python não?

O comando python pode não estar instalado.
Crie um link simbólico para corrigir isso:

sudo ln -sf /usr/bin/python3 /usr/bin/python

Q4: Como remover uma versão antiga do Python no Ubuntu?

Primeiro, liste os pacotes Python instalados:

apt list --installed | grep python

Para remover uma versão específica do Python:

sudo apt remove python3.6

Q5: Remover uma versão mais antiga do Python afetará o Ubuntu?

Algumas ferramentas do sistema Ubuntu dependem de versões específicas do Python.
Verifique com:

python3 --version

Antes de remover qualquer coisa, sempre verifique o que está instalado:

apt list --installed | grep python

6. Resumo e Artigos Recomendados

Neste guia, abordamos como verificar, alterar e trocar versões do Python no Ubuntu.

  • Verificar a versão do Pythonpython3 --version
  • Alterar a versão em todo o sistemaupdate-alternatives ou ln -sf
  • Gerenciar versões por projetovenv ou pyenv

Usar pyenv torna o gerenciamento de versões do Python especialmente fácil.
Se você precisar de diferentes versões do Python em vários projetos ou quiser mudar o padrão do sistema, experimente usar pyenv.