Aprender a crear un entorno virtual de Python en Windows te permite aislar las dependencias de cada proyecto en carpetas separadas, sin que las bibliotecas de uno interfieran con otro. Esta guía práctica es ideal para quien ya conoce los fundamentos de Python y quiere ordenar su flujo de trabajo con el módulo venv.
Antes de crear cualquier entorno, conviene confirmar que Python está bien instalado y saber desde dónde se ejecuta. Aquí empieza todo.
¿Cómo verifico que Python está instalado en Windows?
Abre un CMD y ejecuta python --version. Si todo está en orden, verás la versión que tienes activa, en este caso Python 3.13 [00:29].
Después usa el comando where python para ubicar en qué ruta vive ese Python [00:39]. Aquí aparece un detalle interesante: pueden salir dos rutas. Una pertenece a la Microsoft Store, que es la versión que trae el sistema, y otra es la que instalaste manualmente.
¿Para qué sirve el comando where en Python? Muestra todas las rutas donde está instalado Python y el orden en que el sistema los busca. La primera ruta de la lista es la que se ejecuta primero.
¿Cómo se crea un entorno virtual con venv?
El módulo venv viene incluido con Python, así que no necesitas instalar nada extra. Ubícate en la carpeta de tu proyecto y ejecuta:
bash
python -m venv newsenv
Aquí -m indica el módulo que vas a usar, venv es el nombre del módulo y newsenv es el nombre del entorno [01:32]. Puedes ponerle cualquier nombre descriptivo, pero la recomendación es usar uno corto.
Antes de crearlo, si ejecutas el comando dir verás que no existe ninguna carpeta nueva [01:07]. En cuanto corres el comando de venv, aparece una carpeta con archivos clave para tu entorno.
¿Qué contiene la carpeta del entorno virtual?
Dentro del entorno encontrarás varios elementos que hacen que todo funcione de forma aislada:
- La carpeta
Scripts, con los scripts para activar y desactivar el entorno.
- El ejecutable
python.exe, una versión personalizada exclusiva de ese entorno.
- El archivo
activate.bat, que usas en la terminal para activar el entorno.
- El archivo
pyvenv.cfg, donde viven las configuraciones y las rutas [02:29].
Recuerda que cada entorno virtual nace vacío: no tiene ningún paquete instalado hasta que tú lo agregues.
¿Por qué falla la activación del entorno en PowerShell?
Para activar el entorno usas el script activate.ps1, ya que estás trabajando en una consola PowerShell [03:00]. Copias la ruta relativa, la pegas y presionas Enter.
Y aquí viene lo que le pasa a casi todos: aparece un error indicando que el entorno no se activó porque la ejecución de scripts está deshabilitada [03:22].
¿Cómo soluciono el error de ejecución de scripts en PowerShell? Ve a la documentación oficial de Python, busca la sección de Windows y copia el comando que habilita la ejecución de scripts. Al ejecutarlo, podrás activar el entorno sin problema.
Una vez aplicado ese comando, el prompt de la terminal cambia y te muestra que el entorno quedó activado [04:07].
¿Cómo confirmo qué Python estoy usando en PowerShell?
Como PowerShell no ejecuta los comandos del CMD igual, tienes que correr el comando de esta forma:
bash
cmd /c where python
Con esto verás que ahora aparece un nuevo python.exe al inicio de la lista [04:50]. Ese es el orden de búsqueda: Python intentará usar primero el del entorno virtual y, si no funciona, pasará a las demás versiones.
¿Cómo instalo paquetes desde PyPI?
PyPI es la plataforma donde la comunidad de Python comparte todos sus paquetes y bibliotecas [05:16]. Ahí puedes buscar, por ejemplo, Ruff, un paquete usado para formatear código.
La misma página de PyPI te entrega el comando de instalación. Lo copias, lo pegas en la terminal y listo. Luego puedes comprobar la instalación de dos formas:
- Revisando la carpeta del entorno virtual donde aparecen los paquetes.
- Ejecutando
pip list, que lista todas las dependencias instaladas [05:55].
Para salir del entorno usas el comando deactivate [06:10]. Fíjate que el prompt cambia de inmediato y, si vuelves a correr pip list, el paquete Ruff ya no aparece porque el entorno está apagado.
¿Para qué sirve el archivo requirements.txt?
Cuando instalas paquetes, esos paquetes deben compartirse con todo el equipo de desarrollo. La práctica recomendada es usar un archivo requirements.txt en la raíz del proyecto [06:40].
Para generar su contenido, con el entorno activado ejecutas:
bash
pip freeze
Esto devuelve la lista de dependencias con su versión exacta [06:57]. Al fijar la versión con el doble igual, garantizas que se instale exactamente la misma cuando alguien más ejecute la instalación.
¿Cómo instalo dependencias desde un requirements.txt? Usa pip install -r seguido de la ruta del archivo. Python lee la lista e instala cada paquete con su versión, aunque no lo escribas manualmente en el comando.
En la demostración se desinstala Ruff con pip uninstall ruff, confirmando con Y mayúscula, y luego se reinstala automáticamente desde el archivo [07:38].
¿Cómo veo el entorno virtual en Visual Studio Code?
Una ventaja extra es que Visual Studio Code te muestra en la parte inferior qué entorno virtual estás usando [08:19]. Solo abres un archivo Python y aparece la información, muy útil cuando ni siquiera tienes la terminal abierta.
Como desafío, ve a PyPI y busca el paquete python-dotenv. Instálalo e intenta usarlo para trabajar con archivos .env, donde puedes guardar credenciales sin compartirlas con todo el equipo [08:47].
¿Ya probaste separar las dependencias de tus proyectos con entornos virtuales? Cuéntame en los comentarios cómo te fue con tu primer venv.