Ambientes Virtuais em Python com Pyenv-virtualenv no Ubuntu

Demonstração de como criar ambientes virtuais em Python com o plugin virtualenv do Pyenv no Ubuntu.

Imagem de capa

Quero criar um ambiente virtual com a versão do Python 2.7.6 e um outro com a versão 3.6.2. E ai, como faço? É ai que entra o pyenv + pyenv-virtualenv, pois com o pyenv conseguimos instalar facilmente versões diferentes do python na mesma máquina e alternar entre elas apenas com um simples comando. Já o pyenv-virtualenv é um plugin do pyenv que nos permite criar ambientes isolados escolhendo a versão do Python antes de criá-los.Chique né e como começar?

1. Instale do Pyenv.

É preciso ter o pyenv instalado para utilizar seus plugins. Se ainda não tiver instalado o pyenv, entre neste link: Gerenciando versões Python com Pyenv no Ubuntu.

2. Instale do plugin pyenv-virtualenv.

git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv

3. E para surtir efeito das alterações, rode:

source ~/.bashrc

4. Enfim vamos criar nosso primeiro virtualenv (Ambiente Virtual):

pyenv virtualenv system my_venv_2.7.x

5. Ative-o digitando:

pyenv activate my_venv_2.7.x

Para desativar:

pyenv deactivate

Agora digite python e você verá que a versão usada para criar o virtualenv foi a padrão que veio instalada no sistema antes mesmo de você instalar o pyenv. No meu caso foi a 2.7.6

Para criar com outra versão do python, basta digitar por exemplo:

pyenv virtualenv 3.6.2 my_env_3.6.2

Para listar os ambientes virtuais criados:

pyenv virtualenvs

my_env_2.7.x (created from /home/felipe/.pyenv/versions/2.7.6)
my_env_3.6.2 (created from /home/felipe/.pyenv/versions/3.6.2)

Para apagar um ambiente virtual existente:

pyenv uninstall my_env_3.6.2

Agora podemos criar ambientes virtuais isolados como o virtualenv fazia mas com uma vantagem, ainda podemos escolher qual versão do python usar, legal né.