≡En resumen
- En programación, un virtual environment aísla las librerías de cada proyecto; en realidad virtual, es el mundo 3D en el que te sumerges.
- En Python se crea con python -m venv .venv, se activa con un script y se sale con deactivate.
- El entorno virtual no se sube a Git: se recrea a partir de un archivo de dependencias como requirements.txt.
- En muchas distribuciones Linux actuales, pip se niega a instalar paquetes globales y obliga a usar un entorno virtual.
- El entorno virtual de la RV combina modelos 3D, un motor gráfico y dispositivos que registran tus movimientos.
01 ¿Qué es un virtual environment? Los dos significados
| Contexto | Qué significa | Ejemplo |
|---|---|---|
| Programación (Python y otros) | Carpeta aislada con intérprete y paquetes propios de un proyecto | La carpeta .venv de un proyecto con sus librerías |
| Realidad virtual y videojuegos | Escenario 3D simulado con el que se interactúa | Un simulador de formación para operarios |
| Educación | Entorno virtual de aprendizaje (EVA), la plataforma de un curso online | El campus virtual de una universidad |
Si llegas aquí buscando la plataforma de cursos, lo que buscas es un aula virtual. El resto de esta entrada explica en detalle los dos primeros sentidos.
02 Entorno virtual en Python: qué es venv
Python instala por defecto los paquetes en un único lugar compartido por todos tus proyectos. Si un proyecto actualiza una librería, otro puede romperse. El módulo venv, incluido en la biblioteca estándar desde Python 3.3 a raíz de la PEP 405, resuelve esto: crea una carpeta con un enlace al intérprete base, un archivo de configuración pyvenv.cfg y su propio directorio de paquetes.
Según la documentación oficial, el entorno virtual está aislado por defecto de los paquetes del Python base, y herramientas como pip instalan dentro de él sin que tengas que indicarlo cuando está activo.
Aislamiento
Cada proyecto tiene sus versiones exactas de librerías, sin conflictos entre proyectos.
Reproducibilidad
Con un archivo de dependencias, cualquier compañero o servidor recrea el mismo entorno.
Sin permisos de administrador
Instalas paquetes en tu carpeta de proyecto sin tocar el Python del sistema.
Desechable
Si algo se estropea, borras la carpeta y la vuelves a crear en segundos.
03 Cómo crear y activar un entorno virtual de Python
-
1
Crea el entorno
En la carpeta del proyecto ejecuta: python -m venv .venv (en algunos sistemas, python3). El nombre .venv es el más habitual.
-
2
Actívalo
En macOS y Linux: source .venv/bin/activate. En Windows con PowerShell: .venv\Scripts\Activate.ps1; con cmd: .venv\Scripts\activate.bat.
-
3
Instala los paquetes
Con el entorno activo, pip install paquete instala dentro de .venv. El prompt suele mostrar el nombre del entorno.
-
4
Guarda las dependencias
pip freeze > requirements.txt registra las versiones exactas para poder recrear el entorno.
-
5
Sal del entorno
Escribe deactivate. Para volver a trabajar, solo tienes que activarlo de nuevo.
04 venv, virtualenv, conda y uv: herramientas de entornos
| Herramienta | Qué es | Cuándo usarla |
|---|---|---|
| venv | Módulo estándar de Python, sin instalar nada | Por defecto, en la mayoría de proyectos |
| virtualenv | Paquete externo, anterior a venv, con más opciones | Proyectos antiguos o necesidades avanzadas |
| conda | Gestor de paquetes y entornos que también instala librerías no escritas en Python | Ciencia de datos con dependencias compiladas |
| Poetry, Pipenv, uv | Gestores de proyecto que crean el entorno y bloquean versiones | Equipos que quieren dependencias reproducibles y un solo comando |
La idea de aislar dependencias no es exclusiva de Python. En JavaScript, cada proyecto guarda sus paquetes en su carpeta node_modules; en PHP, Composer usa vendor; y los contenedores llevan el aislamiento más lejos, empaquetando también el sistema. Todo forma parte de preparar un buen entorno de desarrollo, sea cual sea el lenguaje de programación.
Un equipo prepara un servicio en Python que clasifica correos con un modelo de lenguaje. Cada desarrollador crea su .venv a partir del mismo archivo de dependencias, el servidor de pruebas hace lo mismo en cada despliegue y nadie depende de lo que tenga instalado en su portátil. Así funcionan los proyectos que desarrollamos como agencia de IA.
05 Buenas prácticas y errores frecuentes con entornos virtuales
- ✓Crea un entorno por proyecto, dentro de la carpeta del proyecto, para saber siempre cuál corresponde a cada uno.
- ✓Usa python -m pip en lugar de pip a secas: así instalas con el intérprete que realmente estás usando.
- ✓En tu editor, selecciona como intérprete el Python de .venv; si no, verás errores de «módulo no encontrado» aunque lo hayas instalado.
- ✓Si actualizas la versión de Python del sistema, borra el entorno y vuelve a crearlo: está ligado al intérprete con el que se creó.
- ✓Fija versiones en el archivo de dependencias para que producción use exactamente lo mismo que desarrollo.
- ✓No mezcles gestores: si el proyecto usa conda o Poetry, no instales paquetes sueltos con pip por fuera.
06 Entorno virtual en realidad virtual y mundos 3D
En realidad virtual, el entorno virtual es el escenario simulado que ves y con el que interactúas. Se construye con modelos 3D y un motor gráfico, y se experimenta con un visor que sigue los movimientos de la cabeza y las manos, aunque también existen entornos virtuales de escritorio que se exploran con pantalla, teclado y ratón.
Escenario 3D
Objetos, espacios y personajes modelados en tres dimensiones, con luces y sonido.
Motor gráfico
Software que renderiza la escena en tiempo real y aplica física e interacción.
Dispositivos
Visores, controladores, guantes o simplemente pantalla y ratón, según el grado de inmersión.
Interacción
Moverse, coger objetos, pulsar botones o hablar con otros usuarios dentro del entorno.
| Tecnología | Qué ves | Ejemplo |
|---|---|---|
| Realidad virtual | Solo el entorno virtual; el mundo real queda oculto | Simulador de formación con visor |
| Realidad aumentada | El mundo real con elementos digitales superpuestos | Probar un mueble en tu salón con el móvil |
| Realidad mixta | Objetos digitales anclados al espacio real con los que interactúas | Un plano 3D sobre la mesa de reuniones |
Si lo que necesitas es mezclar lo digital con el mundo físico en vez de sustituirlo, consulta la entrada de realidad aumentada.
07 Usos de los entornos virtuales inmersivos
Formación y simulación
Practicar procedimientos peligrosos o caros (maquinaria, emergencias, cirugía) sin riesgo.
Arquitectura e inmobiliaria
Recorrer un edificio antes de construirlo o enseñar una vivienda a distancia.
Comercio y marketing
Showrooms virtuales y experiencias de marca en ferias y eventos.
Colaboración
Reuniones y revisiones de diseño con avatares en un espacio compartido.
Preguntas frecuentes sobre Virtual Environment
Es una carpeta aislada con su propio intérprete y sus propios paquetes, creada con el módulo venv, para que cada proyecto tenga sus dependencias sin afectar a otros.
Con python -m venv .venv en la carpeta del proyecto. Luego se activa con source .venv/bin/activate en macOS y Linux o .venv\Scripts\activate en Windows.
Escribiendo deactivate en la terminal. Para volver a usarlo, basta con activarlo de nuevo.
venv viene incluido en Python desde la versión 3.3; virtualenv es un paquete externo, anterior, que ofrece algunas opciones adicionales.
No. La documentación de Python recomienda no incluirla en el control de versiones; se sube el archivo de dependencias y cada persona recrea su entorno.
Es el espacio tridimensional generado por ordenador en el que el usuario se sumerge con un visor u otros dispositivos y con el que puede interactuar.
Que tu sistema ha marcado su Python como gestionado externamente (PEP 668) y pip no instala paquetes globales. La solución es crear y activar un entorno virtual.
Fuentes consultadas
Sobre el autor
Germán Gutiérrez
Development Manager en appyweb
Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.
Ver perfil en LinkedIn ↗