Saltar a contenido

Entornos Virtuales: Aislado y Bajo Control

Un Entorno Virtual es un directorio aislado que contiene su propia instalación de Python y sus propias librerías. Esto permite que diferentes proyectos en la misma computadora tengan versiones distintas de una misma librería sin generar conflictos.


1. ¿Por qué son necesarios?

Imagina que tienes dos proyectos: * Proyecto A: Usa una librería antigua (v1.0) para un sistema estable. * Proyecto B: Necesita la versión más reciente (v3.0) de esa misma librería.

Si instalas las librerías de forma "global", una borrará a la otra. Con un entorno virtual, cada proyecto vive en su propia "burbuja" con sus propias reglas.


2. El Flujo de Trabajo Estándar (venv)

Python incluye por defecto el módulo venv. El proceso siempre sigue estos tres pasos:

  1. Creación: Se crea la carpeta que contendrá el entorno.
    • Comando: python -m venv nombre_del_entorno
  2. Activación: Le dices a tu terminal que use ese Python específico y no el del sistema.
    • Windows: nombre_del_entorno\Scripts\activate
    • Mac/Linux: source nombre_del_entorno/bin/activate
  3. Desactivación: Cuando terminas de trabajar.
    • Comando: deactivate

3. El archivo requirements.txt

Para que otro desarrollador pueda recrear tu entorno exactamente igual, usamos un archivo de texto que lista todas las librerías y sus versiones.

  • Exportar: pip freeze > requirements.txt (Guarda todo lo que instalaste).
  • Instalar: pip install -r requirements.txt (Instala todo lo que el proyecto necesita de una sola vez).

Reto: Comandos de Gestión de Entornos

Vamos a validar que conoces los comandos fundamentales para moverte entre entornos virtuales y gestionar librerías.

Instrucciones:

  1. Crea una variable llamada comando_crear con el comando para crear un entorno llamado env.
  2. Crea una variable llamada comando_exportar con el comando para generar el archivo de requerimientos.
  3. Define una variable llamada nombre_archivo que sea el nombre estándar del archivo de dependencias (requirements.txt).

# Gestiona tu entorno aislado: