¿Alguna vez te has preguntado cómo empiezan los proyectos de python? ¿Creo una carpeta? ¿Uso cualquier IDE? ¿Uso pip install y ya …?
No todo es siempre un IDE, a veces, la base de todo está en la consola. En python existe el concepto de “entorno virtual” esto es que para un proyecto dado guarda las bibliotecas o paquetes necesarios para este proyecto. La idea es similar a quien conozca npm de Node.js.
La cosa es que en python con pip podemos instalar paquete usando:
pip install <nombre_paquete>
Pero por defecto python lo instala de forma global para el interprete de python (en la carpeta lib donde tengas instalado python). Entonces: ¿Qué pasa si en un proyecto necesito Pandas 2.3 y en otro 1.4 y en el interprete global tengo instalado Pandas 2.2. Pues por defecto se usará la versión 2.2, para evitar estos problemas, existe venv.
venv
venv nos permite crear un proyecto python dentro de un “entorno virutal” (similar a la idea del chroot de unix). Lo que hace es crear un entorno de desarrollo/ejecución que está relativo a nuestra carpeta de trabajo y no usa ni guarda nada en la carpeta global de python: Instala el interprete y todas las dependencias que usemos en una subcarpeta de nuestro proyecto.
De este modo nuestro proyecto siempre será independiente de la instalación global de python. Todo gracias a la idea del virtualenv.
Paso 1: Prepara el Terreno (Instala virtualenv)
Primero, asegúrate de tener Python instalado en tu sistema. Si no lo tienes, descargalo desde: https://www.python.org/downloads/
python -v
sudo apt install -y python3 python3-pip
Una vez que tengas Python, abre tu terminal o línea de comandos. Vamos a instalar virtualenv (si no lo tienes ya):
pip install virtualenv
Paso 2: Crea tu Carpeta de Proyecto
Ahora toca crear una carpeta para nuestro nuevo proyecto. Puede llamarse como quieras. En este ejemplo, la llamaremos mi_primer_proyecto.
mkdir mi_primer_proyecto
cd mi_primer_proyecto
Paso 3: Crear el Entorno Virtual
Una vez que estamos dentro de la carpeta del proyecto podemos crear nuestro entorno virtual. Dentro de la carpeta mi_primer_proyecto, vamos a crear nuestro entorno virtual. Puedes llamarlo venv (es una convención común).
virtualenv .venv
Verás que se crea una carpeta llamada .venv dentro de tu proyecto. Ese el “entorno virtual” donde tenemos un interprete de python y las librerías de python del proyecto para que no colisionen con las del sistema. En concreto tiene esta forma (en Windows):
MI_PROYECTO_NUEVO
|
\---.venv
| .gitignore
| CACHEDIR.TAG
| pyvenv.cfg
|
+---Lib
| \---site-packages
| | pip-25.3.virtualenv
| | _virtualenv.pth
| | _virtualenv.py
| |
| +---pip
...
|
\---Scripts
activate
activate.bat
activate.fish
activate.nu
activate.ps1
activate_this.py
deactivate.bat
pip-3.14.exe
pip.exe
pip3.14.exe
pip3.exe
pydoc.bat
python.exe
python3
python3.exe
pythonw.exe
venvlauncher.exe
Paso 4: Activa tu Entorno Virtual
Para empezar a usar tu entorno virtual, tienes que “activarlo”. Los comandos varían un poco según tu sistema operativo:
En Windows:
.\.venv\Scripts\activate.bat
En Linux:
source .venv/bin/activate
** En Linux es importante usar “source” porque no queremos ejecutar un script queremos ejecutar unos comandos que afecten al shell actual
Una vez activado, al principio del prompt del shell veremos (venv), esto indica que estamos dentro de un entorno virtual. Cualquier librería que instalemos ahora se quedará dentro de esta “burbuja”.
Paso 5: Programar
Ahora que tenemos nuestro entorno listo por fin estamos en condiciones de empezar a programar e instalar tantas dependencias como necesitemos. Vamos a crear un pequeño script de Python. Crea un archivo llamado main.py (o como quieras) dentro de tu carpeta mi_primer_proyecto. Puedes usar un editor de texto simple para esto, o el que prefieras..
#!/usr/bin/env python
def saludar(nombre):
print(f"¡Hola, {nombre}! Este es tu primer proyecto en Python.")
if __name__ == '__main__':
saludar("Programador")
Podemos ejecutarlo así:
python main.py
Deberías ver el saludo en tu consola.
Por cierto, ahora mismo podemos abrir el proyecto en un IDE como pycharm y empezar a usarlo (por ejemplo) y nos reconoce todo el trabajo, en la siguiente imagen se puede ver:

Extra: Guardar y recuperar las dependencias (paquetes pip)
Como un un entorno virtual tiene sus propios paquetes en la carpeta .venv es importante al compartir código tener un catalogo de los paquetes usados para que nuevos usuarios/desarrolladores utilicen las mismas versiones. Para ello podemos hacer:
pip3 freeze -l > requirements.txt
Genera un fichero así:
certifi==2025.8.3 charset-normalizer==3.4.3 colorama==0.4.6 colorlog==6.9.0 docopt==0.6.2 idna==3.10 pipreqs==0.4.13 PyYAML==6.0.2 requests==2.32.5 urllib3==2.5.0 xlwt==1.3.0 yarg==0.1.10
Y para instalar estos paquetes una vez se ha copiado alguien el proyecto o clonado desde git, hacemos:
pip3 install -r requirements.txt -v
¡Espero que haya sido de ayuda! ¡Adiós!