Entornos virtuales y pip: instalar bibliotecas de Python
Cada proyecto con sus propias bibliotecas: crea un entorno con venv, instala con pip y guarda la lista.
Python trae muchas cosas de serie, pero lo más potente está en las bibliotecas que publica la comunidad en PyPI (el índice de paquetes de Python): requests para hacer peticiones web, pandas para datos, flask o django para webs… Se instalan con pip. El problema aparece cuando un proyecto necesita una versión de una biblioteca y otro proyecto, otra distinta. La solución, que recomienda la propia documentación de Python, son los entornos virtuales.
Qué es un entorno virtual
Un entorno virtual es una carpeta dentro de tu proyecto con su propia copia de Python y sus propias bibliotecas. Lo que instalas dentro no afecta al resto del sistema ni a otros proyectos. Si algo se estropea, borras la carpeta y la vuelves a crear en un minuto.

Crearlo y activarlo en Windows
En la terminal, dentro de la carpeta del proyecto:
python -m venv .venv
Eso crea la carpeta .venv (el nombre es una convención; puede ser otro). Para activarlo:
# En PowerShell (la terminal de Windows por defecto)
.venv\Scripts\Activate.ps1
# En el Símbolo del sistema (cmd)
.venv\Scripts\activate.bat
Sabrás que está activo porque el indicador de la terminal empieza por (.venv). A partir de ahí, python y pip son los del entorno. Para salir, escribe deactivate.
Si PowerShell dice que la ejecución de scripts está deshabilitada, la documentación de Python indica que puede ser necesario permitirlo para tu usuario con:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Ese ajuste permite ejecutar scripts creados en tu equipo y exige firma a los descargados de internet. Si prefieres no cambiarlo, usa activate.bat desde el Símbolo del sistema.
VS Code detecta la carpeta .venv y te ofrece usarla; si no, elígela con Python: Select Interpreter en la paleta de comandos.
Instalar bibliotecas con pip
Con el entorno activado:
pip install requests # última versión
pip install "requests==2.32.3" # una versión concreta
pip list # qué hay instalado
pip uninstall requests # quitarla
Antes de instalar algo, comprueba en pypi.org que el nombre es exactamente el de la biblioteca que buscas. Existen paquetes maliciosos con nombres casi iguales a los de bibliotecas populares (reqeusts en lugar de requests) que esperan un error al escribir. Instalar un paquete es ejecutar código de otra persona en tu equipo.

Guardar y compartir las dependencias
Para que otra persona (o tú en otro ordenador) instale exactamente lo mismo, guarda la lista en requirements.txt:
pip freeze > requirements.txt
Y para instalarlo todo en un entorno nuevo:
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -r requirements.txt
Sube requirements.txt a tu repositorio, pero no la carpeta .venv: añádela a .gitignore. Pesa mucho, depende de tu sistema y se regenera con ese comando.
Problemas frecuentes
ModuleNotFoundError: No module named 'requests': lo instalaste en otro entorno o el entorno no está activado. Comprueba que la terminal muestra(.venv)y que VS Code usa ese intérprete.- «pip no se reconoce»: usa
python -m pip install …, que funciona siempre quepythonfuncione. - Has movido o renombrado la carpeta del proyecto y el entorno falla: los entornos virtuales no se pueden mover. Bórralo y créalo de nuevo con
requirements.txt.
Cuando necesites aislar no solo las bibliotecas sino todo el sistema (base de datos, servidor web, versión del sistema operativo), el siguiente paso son los contenedores con Docker.
Fuentes consultadas
- Entornos virtuales y paquetes (Python Software Foundation)
- venv: creación de entornos virtuales (Python Software Foundation)
- Installing Packages (Python Packaging Authority)
