Como trocar a versão Python no Linux usando Pyevn

Como trocar a versão Python no Linux usando Pyevn

Você precisa executar um software que requer uma versão diferente do Python daquele que você instalou em seu sistema? Existem várias maneiras pelas quais você pode resolver esse problema, mas a mais fácil confia em uma ferramenta chamada pyenv. Vamos discutir brevemente o que Pyenv faz e por que você deve usá -lo antes de explicar exatamente o que precisa fazer para mudar a versão padrão do Python com ele.

O que é pyenv e como funciona?

Pyenv é uma ferramenta de gerenciamento de versão Python feita de scripts de shell pura, o que significa que não depende do Python. Isso é bom porque a última coisa que você deseja é poluir seu ambiente instalando uma ferramenta que deveria ajudá -lo a gerenciá -lo melhor.

A beleza do Pyenv vem do fato de que simplesmente adiciona um diretório no topo do seu $ PATH, uma variável que informa ao sistema operacional Linux onde procurar executáveis, como Python. Este novo diretório contém um executável leve que passa seu comando junto ao pyenv.

Você pode usar o seguinte comando para exibir seu caminho atual:

$ ECHO $ ​​PATH

Você deve ver vários diretórios separados por colonas:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

Para tornar a saída melhor, você pode usar uma versão mais sofisticada do comando acima:

$ echo -e $ path //:/\\ n
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/jogos
/usr/local/jogos

Quando você usa o comando python para lançar um software, o sistema operacional passa pelos diretórios na variável $ path de cima para baixo até encontrar um contendo o executável relevante.

Para ver rapidamente qual diretório, use o comando whereis:

$ whereis python
/usr/bin/python

O comando python -v pode dizer qual versão do Python está instalada:

$ python -v
Python 2.7.18

Para permitir que você use qualquer versão do Python que você quiser sem mexer com a que veio instalada com o seu sistema operacional, o Pyenv manipula a variável $ PATH, permitindo que você altere a versão global do Python em uma base por usuário facilmente. Além disso, você também pode usar versões específicas do Python para projetos individuais ou definir uma versão específica do Python apenas para sua sessão de shell atual.

Como instalar pyenv?

Antes de instalar o próprio PYENV, você deve garantir que não haja dependências do sistema não atendido:

$ sudo apt-get update; Instalação sudo apt-get Faça o excesso de construção LIBSSL-DEV ZLIB1G-DEV LIBBZ2-DEV LIBLETLINE-DEV LIBSQLITE3-DEV GIT CURL LLVM LIBNCURSESW5-DEV XZ-UTILS TK-DEV LIBXML2BLEV LIBXMLSEC1

Uma vez feito isso, você pode usar o instalador automático para instalar o PYENV no seu sistema Linux:

$ curl https: // pyenv.executar | Bash

Então você precisa adicionar as seguintes linhas ao seu ~/.BashRC ou arquivo de configuração equivalente se você estiver usando um shell diferente do Bash:

Caminho de exportação = "$ Home/.pyenv/bin: $ path "
Eval "$ (pyenv init -)"
Eval "$ (Pyenv Virtualenv -Init -)"

Não se preocupe; O instalador automático dirá exatamente o que você precisa adicionar e onde. Por fim, você pode reiniciar seu shell (fechar seu terminal) e verificar se o PYENV foi instalado com sucesso exibindo sua versão atual:

$ pyenv --version
Pyenv 2.2.4

Como trocar de versão do Python usando Pyenv?

Para mudar a versão Python usando Pyenv, você precisa primeiro instalar pelo menos uma versão do Python usando o comando pyenv install. Basta digitar a versão desejada após o comando:

$ pyenv install 3.10.2

Para exibir uma lista de todas as versões disponíveis, faça o seguinte:

$ pyenv install -list

Existem muitas versões diferentes para escolher, por isso não as copiaremos e colá -las aqui para poupar seu roll roll o esforço necessário para passar por todos eles.

Como o comando Python Print Version (Python -v) que usamos anteriormente neste artigo apenas diria qual é a versão do System Python, você precisa usar o comando Pyenv Versions para ver quais versões estão agora disponíveis para Pyenv:

versões $ pyenv
* Sistema (definido por/home/David/.pyenv/versão)
2.7.17
3.7.10
3.10.2

Como você pode ver, Pyenv agora está ciente de três versões do Python: a versão do sistema (2.7.18 no nosso caso), 2.7.17, 3.7.10 e 3.10.2.

Agora, a troca de versão do Python na base global, local ou shell é uma questão de comando único:

$ pyenv global 2.7.17
$ pyenv local 3.7.10
$ pyenv shell 3.10.2

No nosso caso, usamos o comando global para rebaixar a versão 2 do Python.7.18 à versão 2.7.17. Para verificar se realizamos o resultado desejado, podemos usar dois comandos familiares:

versões $ pyenv
sistema
* 2.7.17 (definido por/home/David/.pyenv/versão)
3.10.2
3.7.10
e
$ python -v
Python 2.7.17

É assim que é fácil rebaixar a versão Python usando Pyenv! Depois de um tempo, você pode excluir algumas versões de python que você não precisa mais. O comando a seguir permite fazer exatamente isso:

$ pyenv desinstalar

Você pode ver comandos Pyenv mais úteis digitando a ajuda pyenv no terminal. Também recomendamos que você leia a documentação oficial no Github para entender melhor como Pyenv funciona sob o capô.

Conclusão

Mudar ou rebaixar a versão Python é algo praticamente todos os desenvolvedores e até alguns usuários avançados do Linux precisam fazer em algum momento. Felizmente, ferramentas como Pyenv tornam a tarefa sem esforço, permitindo que você atinja o objetivo desejado com alguns comandos simples.