Como posso alterar o python padrão no meu Ubuntu 20.04 para Python3.8?
Gostaria de definir o python 3.8 como padrão em meu PC Thinkpad X230 Ubuntu 20.04
Eu tentei definir um alias
gt@gt-ThinkPad-X230:~$ alias python='usr/bin/python3.8'
P: Isso altera um arquivo .bashrc? Se sim, qual? ~ / .bashrc? outro? se sim, qual?
gt@gt-ThinkPad-X230:~$ python --version
bash: usr/bin/python3.8: No such file or directory
Reclama que não consegue encontrar /usr/bin/python3.8, buuuuut:
gt@gt-ThinkPad-X230:~$ ls /usr/bin/python*
/usr/bin/python /usr/bin/python3.8 /usr/bin/python3-pasteurize /usr/bin/python2 /usr/bin/python3.8-config /usr/bin/python3-unidiff /usr/bin/python2.7 /usr/bin/python3-config /usr/bin/python3 /usr/bin/python3-futurize
Como faço para que o bash encontre, consulte /usr/bin/python3.8?
Respostas
Em primeiro lugar, para responder à sua pergunta, sua abordagem deve funcionar, eu acho que o caminho que você forneceu em seu alias precisa /do caminho anterior, então o comando deve ser alias python='/usr/bin/python3.8', ele realmente precisa ir para seu ~/.bashrcarquivo, presumindo que você esteja usando o bash.
Em segundo lugar, o Ubuntu tem um método muito bom de definir binários padrão globalmente, em vez de mexer com arquivos dot config conforme ilustrado aqui: update-alternativas
uma solução melhor pode ser simplesmente executar:
sudo update-alternatives --set python /usr/bin/python3.8
Isso garantirá que você tenha a versão do python em uso que pretende, em todos os lugares.
A maneira correta é sudo apt install python-is-python3- ele efetivamente faz um link simbólico, mas também acompanha as atualizações futuras; portanto, se sua distribuição do ubuntu passar a dizer Python 3.9, o link simbólico do manual não funcionará mais, mas o pacote garante que ainda seja válido.
Você deve ser capaz de fazer isso em um shell de comando digitando:
alias python=python3.8
Para torná-lo permanente, você precisa abrir ~ / .bashrc e adicionar essa linha ao final dele. Deve ser tão simples quanto isso! Lembre-se de que isso só funciona por usuário, que pode ou não ser o que você deseja.
A outra coisa que notei com sua tentativa, é que você está perdendo o / principal, então deveria ser lido como:
alias python='/usr/bin/python3.8'
sem esse avanço / pode estar tentando usar um caminho relativo.