Como configurar python 3 como intérprete padrão no Ubuntu 14.04 [duplicado]

24

Estou trabalhando com o Ubuntu 14.04 LTS no EC2. Eu quero mudar o interpretador python padrão do python 2.7 para 3.4.0, que é instalado por padrão.

Quando faço:

/home/ubuntu$ which python
/usr/bin/python

procurando em /usr/bin/ eu vejo:

Então, obviamente, está lá. Como faço para definir isso como padrão?

    
por user61629 26.02.2015 / 00:55

1 resposta

37

Haveria várias maneiras de fazer isso. Primeiro, altere os links sym para que o python in /usr/bin/ esteja apontando para o mesmo local que o /usr/bin/python3 sym-link. No entanto, esta é uma má ideia (como explico abaixo).

A segunda opção seria criar um alias de comando específico do usuário - essa é a melhor opção para os dois.

Alterar links Sym é ruim

O Python é usado em grande parte do Ubuntu para scripts e software do sistema, e o software depende de ter o Python (e os comandos para iniciar o Python) em um determinado ponto.
Veja aqui (Ubuntu Wiki - bastante desatualizado) e aqui (Debian Wiki) para mais informações sobre o que o Ubuntu / Debian usa o Python.

Agora, enquanto o Python 3 (3.4.0 no seu caso) é a mais nova e a versão sugerida do Python, ainda há muito código por aí que não foi portado para o Python 3.

Por padrão, como você viu, a execução de python executa o interpretador Python 2.7 - e é isso que o software em seu computador espera.

Então, se você alterar o comando para executar o Python 3, causará todos os tipos de estragos e quebra de código, pois você estará tentando executar o código Python 2.7 (que é escrito na sintaxe do Python 2.7 e usa Python 2.7 bibliotecas) usando o interpretador Python 3.4 (que espera a sintaxe do Python 3.4 e as bibliotecas do Python 3.4).

Método de criação de alias mais seguro

No entanto, o que você pode fazer é criar um alias para seu uso pessoal. Isso pode ser feito facilmente adicionando a seguinte linha:

alias python=python3

ou

alias python=/usr/bin/python3

/ no arquivo ~/.bash_aliases - que você pode editar via sudo nano ~/.bash_aliases . Em seguida, feche e reabra o terminal e você poderá usar o comando python para seu uso pessoal sem afetar o restante do sistema.

No entanto, isso, novamente, não é sugerido porque, embora você não quebre o código do sistema que depende do posicionamento adequado dos interpretadores do Python, eu ouvi que ele pode causar outros problemas (que eu não uso) Não sei / lembro.)

Método adequado que não requer alteração do interpretador Python em todos

Se você estiver escrevendo Python com a sintaxe correta, inclua o que é conhecido como Shebang . (Veja também aqui e aqui .)

Se incluído corretamente, isso permitiria que você executasse um script Python simplesmente por meio de ./SCRIPT-NAME.py após tornar o script executável via sudo chmod +x ./SCRIPT-NAME.py . Você também pode deixar de ter o tipo de arquivo .py e digitar o código em um arquivo vazio, salvá-lo como SCRIPT-NAME e, em seguida, executar sudo chmod +x ./SCRIPT-NAME e executá-lo via ./SCRIPT-NAME .

Concedido, isso faz dar um pouco mais de trabalho - mas garantirá que seu código seja executado usando o interpretador correto.

E realmente. Quão difícil é digitar python3 para executar o código corretamente? Eu não estou tentando ser malvado, e eu posso ver por que você gostaria de fazer isso, mas não é tão difícil apenas executar python3 em vez de python .

    
por RPi Awesomeness 26.02.2015 / 01:09