Skip to content

Instantly share code, notes, and snippets.

@vavasilva
Last active June 1, 2024 19:40
Show Gist options
  • Save vavasilva/81ab0d1dc7afad7cb8a2c25d86c9cb74 to your computer and use it in GitHub Desktop.
Save vavasilva/81ab0d1dc7afad7cb8a2c25d86c9cb74 to your computer and use it in GitHub Desktop.
pyenv commands

Gerenciamento de Dependências em Projetos Python com pyenv, pyenv-virtualenv e pipreqs

Esta documentação guia você através do processo de analisar, instalar e documentar todas as dependências de um projeto Python usando pyenv, pyenv-virtualenv, e pipreqs.

Passo 1: Criar e Ativar um Ambiente Virtual

  1. Criar um ambiente virtual:

    pyenv virtualenv 3.12.0 myproject
  2. Ativar o ambiente virtual:

    pyenv activate myproject

Passo 2: Instalar Dependências do Projeto

Método Manual

Instale as bibliotecas necessárias manualmente:

pip install <library_name>

Por exemplo:

pip install requests flask numpy

Método Automático (Usando pipreqs)

pipreqs é uma ferramenta que gera um arquivo requirements.txt baseado nas importações reais usadas no seu projeto.

  1. Instalar pipreqs:

    pip install pipreqs
  2. Gerar o arquivo requirements.txt: Navegue até o diretório do seu projeto e execute:

    pipreqs . --force

    O parâmetro --force sobrescreve qualquer arquivo requirements.txt existente.

Passo 3: Verificar e Ajustar o arquivo requirements.txt

Depois de gerar o arquivo requirements.txt, revise-o para garantir que todas as dependências necessárias estão listadas corretamente.

Passo 4: Instalar as Dependências do requirements.txt

Se você já possui um arquivo requirements.txt, pode instalar todas as dependências listadas nele com um único comando:

pip install -r requirements.txt

Exemplo Completo

Aqui está um exemplo de como fazer isso em um projeto fictício:

  1. Criar e ativar o ambiente virtual:

    pyenv virtualenv 3.12.0 myproject-env
    pyenv activate myproject-env
  2. Instalar bibliotecas e gerar requirements.txt usando pipreqs:

    pip install requests flask numpy
    pip install pipreqs
    pipreqs . --force
  3. Instalar as dependências do requirements.txt:

    pip install -r requirements.txt

Comandos Básicos do pyenv

  1. Instalar uma versão do Python:

    pyenv install <version>

    Por exemplo:

    pyenv install 3.9.6
  2. Listar todas as versões disponíveis para instalação:

    pyenv install --list
  3. Ver as versões instaladas:

    pyenv versions
  4. Definir a versão global do Python:

    pyenv global <version>

    Por exemplo:

    pyenv global 3.9.6
  5. Definir a versão local do Python para um diretório específico (criando um arquivo .python-version):

    pyenv local <version>

    Por exemplo:

    pyenv local 3.9.6
  6. Definir a versão do Python para a sessão atual do shell:

    pyenv shell <version>

    Por exemplo:

    pyenv shell 3.9.6
  7. Desinstalar uma versão do Python:

    pyenv uninstall <version>

    Por exemplo:

    pyenv uninstall 3.9.6

pyenv-virtualenv

pyenv-virtualenv permite criar e gerenciar ambientes virtuais para diferentes versões do Python.

  1. Criar um novo ambiente virtual:

    pyenv virtualenv <python_version> <virtualenv_name>

    Por exemplo:

    pyenv virtualenv 3.9.6 myproject-env
  2. Listar todos os ambientes virtuais:

    pyenv virtualenvs
  3. Ativar um ambiente virtual:

    pyenv activate <virtualenv_name>

    Por exemplo:

    pyenv activate myproject-env
  4. Desativar o ambiente virtual atual:

    pyenv deactivate
  5. Remover um ambiente virtual:

    pyenv uninstall <virtualenv_name>

    Por exemplo:

    pyenv uninstall myproject-env

Iniciando um Projeto com pyenv e pyenv-virtualenv

Aqui está um passo a passo para iniciar um novo projeto usando pyenv e pyenv-virtualenv:

  1. Instale a versão desejada do Python:

    pyenv install 3.9.6
  2. Crie um novo ambiente virtual para o projeto:

    pyenv virtualenv 3.9.6 myproject-env
  3. Navegue até o diretório do projeto:

    cd /path/to/myproject
  4. Defina o ambiente virtual para ser usado automaticamente nesse diretório:

    pyenv local myproject-env
  5. Verifique se o ambiente virtual está ativado:

    pyenv version
  6. Instale as dependências do projeto usando pip:

    pip install <package_name>

    Por exemplo:

    pip install requests
  7. Crie um arquivo requirements.txt (opcional, mas recomendado):

    pip freeze > requirements.txt
  8. Para ativar o ambiente virtual manualmente no futuro:

    pyenv activate myproject-env
  9. Para desativar o ambiente virtual quando terminar:

    pyenv deactivate

Exemplo Completo

Vamos criar um projeto chamado "example-project":

# Instalar a versão desejada do Python
pyenv install 3.9.6

# Criar um ambiente virtual para o projeto
pyenv virtualenv 3.9.6 example-project-env

# Navegar até o diretório do projeto
mkdir ~/example-project
cd ~/example-project

# Definir o ambiente virtual para ser usado automaticamente nesse diretório
pyenv local example-project-env

# Instalar dependências do projeto
pip install flask

# Criar um arquivo requirements.txt
pip freeze > requirements.txt

# Verificar a versão do Python e o ambiente virtual ativo
pyenv version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment