Resumen

Domina la creación y uso de entornos virtuales en Windows con pasos claros y prácticos. Aquí aprenderás a aislar dependencias por proyecto, activar y desactivar tu entorno, instalar paquetes desde PyPI, y versionar con requirements.txt sin perder tiempo ni romper configuraciones.

¿Qué resuelve un entorno virtual en Windows?

Los entornos virtuales permiten separar paquetes y versiones de Python por proyecto. Así evitas conflictos, reproduces instalaciones y mantienes cada proyecto limpio. Una vez creado, el entorno inicia sin paquetes instalados: es un espacio independiente y controlado.

  • Aislamiento de dependencias por proyecto.
  • Versiones separadas de Python por entorno.
  • Instalaciones reproducibles con un archivo de requerimientos.

¿Cómo verificar Python y su instalación?

Confirma que Python está disponible y dónde se ubica en tu sistema.

python --version
where python
  • Verás rutas distintas: una del sistema y otra de tu instalación manual.
  • En PowerShell, para ejecutar un comando de CMD:
cmd /c where python

Esto muestra el orden de búsqueda del ejecutable: primero el del entorno activo, luego otras rutas del sistema.

¿Cómo crear el entorno con venv y qué carpetas trae?

Crea el entorno con el módulo venv. Puedes usar un nombre corto y descriptivo.

python -m venv MuseEnv

Al finalizar, aparece una nueva carpeta con elementos clave:

  • Carpeta Scripts: activadores y desactivadores del entorno, como activate.bat y Activate.ps1.
  • Ejecutable de Python: python.exe propio del entorno.
  • Archivo de configuración: “pyenv config” con rutas y ajustes del entorno.
  • Carpeta Lib: paquetes instalados solo para este entorno.

¿Cómo activar y solucionar errores en PowerShell?

Para activar en PowerShell, usa el script de la carpeta Scripts. Si ves un error por ejecución de scripts deshabilitada, habilita según la nota para Windows en la documentación de Python y vuelve a activar.

# Activar en PowerShell (ruta relativa dentro de Scripts)
./Scripts/Activate.ps1
  • Si hay restricción de ejecución, copia el comando sugerido en la documentación oficial y ejecútalo.
  • Al activarse, la terminal cambia indicando el nombre del entorno.
  • Para desactivar:
deactivate
  • Útil para validar el ejecutable activo desde PowerShell:
cmd /c where python
  • Primero se usará el python.exe del entorno. Si falla, se intentan otras rutas listadas.

¿Cómo identificar el contenido de Scripts y Lib?

Al explorar la estructura notarás:

  • Scripts: contiene Activate.ps1, activate.bat y utilidades del entorno.
  • Lib: refleja paquetes instalados con pip. Inicia vacío al crear el entorno.
  • Archivo “pyenv config”: define rutas y variables para que el entorno sepa qué usar.

¿Cómo instalar paquetes y congelar dependencias con pip?

Busca paquetes en PyPI, copia el comando de instalación y ejecútalo con el entorno activo. El ejemplo usa el paquete “roof” para formateo de código.

# Instalar un paquete desde PyPI
pip install roof

# Listar paquetes del entorno
pip list
  • Para ver reflejo en la carpeta del entorno, revisa Lib después de instalar.
  • Si desactivas el entorno y ejecutas pip list, ya no verás los paquetes del entorno.

¿Cómo generar y usar requirements.txt?

Estándar para compartir dependencias con tu equipo: requirements.txt.

# Con el entorno activo, “congela” versiones exactas
pip freeze > requirements.txt

# Desinstalar un paquete del entorno
pip uninstall roof

# Instalar desde requirements.txt
pip install -r requirements.txt
  • pip freeze guarda paquetes y versiones exactas para instalaciones reproducibles.
  • pip install -r lee el archivo y reinstala lo necesario sin escribir cada paquete a mano.

¿Cómo aprovechar Visual Studio Code con entornos virtuales?

Al abrir un archivo de Python, Visual Studio Code muestra el entorno activo en la barra inferior. Es práctico cuando la terminal está cerrada: confirmas el intérprete seleccionado a simple vista.

  • Ver el entorno activo sin abrir la terminal.
  • Cambiar de entorno desde el selector de intérprete.

Como reto, instala desde PyPI el paquete “python.env” y úsalo con un archivo .env para manejar credenciales sin compartirlas en el código.

¿Tienes dudas o un truco propio para trabajar con entornos virtuales en Windows? Compártelo en los comentarios y enriquezcamos la práctica en equipo.