Muitos sistemas operacionais atuais, vem com mais de uma versão do interpretador da linguagem Python instaladas e prontas para usar.
A versão padrão é normalmente a mais segura a ser utilizada e, provavelmente, não é a mais atual disponibilizada na sua instalação.
É possível ver quais as versões do interpretador instaladas digitando “python” na linha de comando e pressionando TAB, em seguida, para autocompletar.
Você pode também pedir a versão do interpretador padrão diretamente:
python --version Python 2.7.12
Outro meio, é listar as versões disponíveis no diretório de programas:
ls -lah --color /usr/bin/python*
Na minha listagem, é possível notar que python, python2 são links, que apontam para o interpretador python2.7.
lrwxrwxrwx 1 root root 9 Jun 3 11:39 /usr/bin/python -> python2.7 lrwxrwxrwx 1 root root 9 Jun 3 11:39 /usr/bin/python2 -> python2.7 -rwxr-xr-x 1 root root 3,4M Jun 29 09:20 /usr/bin/python2.7 lrwxrwxrwx 1 root root 9 Jun 3 11:41 /usr/bin/python3 -> python3.5 -rwxr-xr-x 2 root root 4,3M Jul 5 11:20 /usr/bin/python3.5 -rwxr-xr-x 2 root root 4,3M Jul 5 11:20 /usr/bin/python3.5m lrwxrwxrwx 1 root root 10 Jun 3 11:41 /usr/bin/python3m -> python3.5m
Isto quer dizer que, no meu sistema, ao digitar ‘python’ na linha de comando, o link irá me direcionar para o interpretador do Python 2.7.
Se você tiver as cores corretamente configuradas no seu sistema, os links estarão diferenciados dos binários.
Alterar o binário para o qual o link ‘python’ aponta é fácil, como você talvez já tenha percebido — mas não é seguro e nem recomendado.
O problema é que há algumas incompatibilidades entre as versões.
Alguns aplicativos importantes no seu sistema dependem da versão anterior e se referem a ela apenas como ‘python’.
Se você alterar o link, para que ele passe a apontar para a versão mais atual do interpretador, poderá acabar com um sistema quebrado.
O modo seguro de resolver
Muitos usuários querem executar seus scripts, da linha de comando, digitando apenas ‘python’ — e desejam que o interpretador executado seja o mais atual (3.5, por exemplo).
A documentação oficial (links no final do texto) recomenda alterar as variáveis específicas de cada perfil de usuário.
Esta solução resolve o seu problema, sem causar interferências no seu sistema.
Alternativamente, faça referência à versão do Python desejada dentro do seu script.
Vamos conhecer, a seguir, os detalhes de cada solução, de acordo com as sugestões das comunidades de desenvolvedores.
Use o alias para redefinir as suas preferências
Com o comando alias, é possível (re)atribuir qualquer comando ou conjunto de comandos a uma palavra ou “alias“.
Esta solução é simples e não interfere nas configurações do sistema:
### verifique a versão do interpretador python python -V Python 2.7.12 alias python=python3 ### verifique a versão do interpretador python python -V Python 3.5.2
Se preferir, pode se referir ao nome completo do binário, deste jeito:
alias=/usr/bin/python3.5 ### verifique a versão do interpretador python python --version Python 3.5.2
Este ajuste só terá validade durante a sessão atual. Se abrir outro terminal, o sistema voltará ao seu padrão.
Esta solução, permite que você use uma versão do interpretador em um terminal e outra versão em outro. Veja a figura abaixo.
Para tornar esta configuração persistente, adicione esta linha de comando ao arquivo ~/.bash_aliases ou ao ~/.bashrc:
### fazer backup, antes de alterar arquivos de configuração cp .bash_aliases .bash_aliases.backup ### O operador '>>' adiciona uma linha ao arquivo. echo "alias python=/usr/bin/python3.5" >> .bash_aliases
Com este procedimento, daqui pra frente, novas sessões do seu usuário, apontarão para a versão do interpretador que você escolheu.
Indique dentro do script qual a versão do Python a ser usada
Esta outra solução é simples e, também, totalmente inofensiva para seu sistema.
Consiste em indicar dentro de cada script a versão do interpretador a ser usada.
Acrescente, na primeira linha, o código:
#!/usr/bin/env python3
ou
#!/usr/bin/python3
O env
é mais adequado para uso misto em ambientes virtuais.
Referências
Há outras soluções relatadas, nos artigos e nos comentários, nos links que seguem.
As que testei e funcionaram para mim, estão descritas acima e, portanto, são as únicas que endosso. Elas também têm a vantagem de poder ser facilmente desfeitas.
http://askubuntu.com/questions/320996/make-default-python-command-to-use-python-3.
https://linuxconfig.org/how-to-change-from-default-to-alternative-python-version-on-debian-linux.
3 replies on “Como alterar o sistema para usar a versão mais atual do interpretador Python no Linux.”
A titulo de curiosidade, na hora de editar o bash não precisa indicar o path (pelo menos não no ubuntu 16)
usei simplesmente alias python=python3.5
Bem lembrado!! 😉
[…] com isso. Se quiser entender como lidar com mais de uma versão do Python instalada no seu sistema, leia este artigo. Se você quiser um método mais rápido para acessar uma determinada versão do interpretador, da […]