Este blog é um complemento do nosso canal no YouTube. Clique em @CanalQb para seguir e acompanhar nossos vídeos!

Sugestões de pesquisas

Como Criar Múltiplos Ambientes Virtuais com Python

#python; #venv; #programação
@CanalQb

Como Criar Múltiplos Ambientes Virtuais (venv) com Python

Ambientes virtuais (venv) são essenciais no desenvolvimento Python moderno, pois permitem isolar dependências de projetos, evitando conflitos entre bibliotecas. Neste artigo, você aprenderá como criar vários ambientes de forma automática com um simples script.

Por que usar ambientes virtuais?

Utilizar ambientes virtuais garante que cada projeto Python tenha suas próprias dependências, versões de pacotes e configurações, sem afetar outros projetos ou a instalação global do Python no sistema. Isso é especialmente importante em ambientes de desenvolvimento profissional e colaborativo.

Script com o módulo venv

Você pode usar o seguinte script para criar quatro ambientes virtuais automaticamente:

import os
import venv

environments = ["env1", "env2", "env3", "env4"]

for environment in environments:
    path = os.path.join(os.getcwd(), environment)
    venv.create(path, with_pip=True)

print("Virtual environments criados com sucesso!")

Esse código cria os ambientes env1, env2, env3 e env4 no diretório atual. A opção with_pip=True garante que o pip seja instalado em cada ambiente.

Erro comum e alternativa com subprocess

Se você encontrar o erro abaixo ao executar o código:

AttributeError: partially initialized module 'venv' has no attribute 'create'

Esse erro geralmente ocorre por importação circular, como nomear seu arquivo de script como venv.py, o que entra em conflito com o módulo padrão. Uma alternativa mais robusta é usar o módulo subprocess:

import os
import subprocess

environments = ["env1", "env2", "env3", "env4"]

for environment in environments:
    path = os.path.join(os.getcwd(), environment)
    subprocess.run(["python3", "-m", "venv", path])

print("Virtual environments criados com sucesso!")

Funcionamento do Script

  • O módulo os é usado para obter o diretório atual e montar os caminhos dos novos ambientes.
  • Com venv.create() ou subprocess.run(), o Python cria pastas com a estrutura necessária para cada ambiente virtual.
  • Ao ativar o ambiente (por exemplo, com source env1/bin/activate no Linux/Mac ou env1\Scripts\activate.bat no Windows), você pode instalar pacotes com pip sem afetar o sistema.

Dica adicional

Evite nomear seu script como venv.py, pois isso pode causar conflitos com o módulo padrão. Escolha nomes como create_envs.py ou similares.

Conclusão

Automatizar a criação de ambientes virtuais é uma prática eficiente e útil, especialmente em projetos com múltiplas configurações ou dependências. O uso de venv ou subprocess facilita esse processo e torna o gerenciamento mais produtivo.

Para mais dicas e tutoriais sobre Python, confira o canal no YouTube: @CanalQb

Postar um comentário

Comente só assim vamos crescer juntos!
CanalQb mais próximo Quer falar com o CanalQb?
Em que posso te ajudar?
Fale comigo