Depois de aprender que Python possui várias versões e aprender a instalar mais de uma delas com o pyenv, a colinha de hoje mostra um próximo passo: utilizar o venv para criar ambientes virtuais com o Python 3.

No lançamento da versão 3.3 foi anunciado o venv como novo módulo da linguagem. E na versão 3.6 o venv se torna a escolha oficial para criação de ambientes virtuais Python com o script do pyvenv se tornando deprecated.

História do surgimento do venv a parte, vamos aos finalmentes. Basta ter qualquer versão do Python apartir da 3.3 que os códigos abaixo devem funcionar ¯\_(ツ)_/¯.

Para criar um ambiente virtual:

$ python -m venv meuenv

E para ativar o ambiente:

$ source meuenv/bin/activate

Agora atenção para uma coisa: essa forma de criar ambientes virtuais não permite que você crie ambientes para outras versões que não aquela que você esteja usando.

$ python --version
# Python 3.3.0

Aqui eu estava usando o Python 3.3.0 então o myenv vai ter essa versão. Daí é que fica legal ter o pyenv instalado! Você só precisa trocar a versão para a que você quer e criar o ambiente. Veja:

$ python --version
# Python 3.3.0
$ pyenv local 3.6.4
$ python --version
# Python 3.6.4
$ python -m venv meuoutroenv
$ source meuoutroenv/bin/activate

Uma das vantagens de ter um módulo desses embutido na linguagem é não precisar instalar nada mais para conseguir criar ambientes virtuais. Pra galera evita instalar coisas extras no computador como eu isso é fantástico.

E agora só fazer pip install e começar com os códigos ☺️