Skip to main content

Requirements

El archivo requirements.txt es un archivo de texto plano comúnmente utilizado en entornos de desarrollo de Python para especificar las dependencias del proyecto. Contiene una lista detallada de los paquetes de Python y sus versiones que son necesarios para ejecutar correctamente el proyecto.

Función del archivo requirements.txt:

  1. Gestión de dependencias: El propósito principal del archivo requirements.txt es gestionar las dependencias de un proyecto de Python. Define qué paquetes y qué versiones de esos paquetes son necesarios para que el proyecto funcione correctamente. Al listar todas las dependencias en un solo lugar, facilita la replicación exacta del entorno de desarrollo en diferentes sistemas y máquinas.

  2. Reproducibilidad del entorno: Al compartir el archivo requirements.txt con otros desarrolladores o sistemas, se asegura que todos tengan acceso a las mismas versiones de los paquetes. Esto garantiza que el entorno de desarrollo sea reproducible, evitando problemas de compatibilidad y errores causados por diferencias en las versiones de los paquetes instalados.

  3. Instalación automatizada: Los administradores de paquetes como PIP pueden leer el archivo requirements.txt y automatizar la instalación de todas las dependencias listadas. Esto simplifica el proceso de configuración de un nuevo entorno de desarrollo, ya que solo se necesita ejecutar un comando para instalar todas las dependencias requeridas.

Estructura del archivo requirements.txt:

El formato del archivo requirements.txt es bastante simple. Cada línea del archivo especifica un paquete de Python junto con su versión, si es necesario. Por ejemplo:

nombre_paquete==versión
  • nombre_paquete es el nombre del paquete de Python que se requiere.
  • versión es la versión específica del paquete que se necesita. Puede ser una versión exacta, una versión mínima o incluso una restricción más compleja.

Por ejemplo, las siguientes líneas en un archivo requirements.txt especifican algunas dependencias:

requests==2.26.0
flask>=2.0.0
numpy~=1.21.0

En este ejemplo:

  • Se requiere el paquete requests en la versión exacta 2.26.0.
  • Se requiere el paquete flask en cualquier versión igual o superior a 2.0.0.
  • Se requiere el paquete numpy en cualquier versión que sea compatible con la versión 1.21.0, pero no superior a la 1.22.0.

Uso del archivo requirements.txt:

Para instalar las dependencias especificadas en un archivo requirements.txt, se puede utilizar el siguiente comando de PIP:

pip install -r requirements.txt

Este comando lee el archivo requirements.txt y automáticamente instala todas las dependencias listadas junto con las versiones especificadas.

En resumen, el archivo requirements.txt es una herramienta fundamental para gestionar las dependencias de un proyecto de Python. Facilita la reproducibilidad del entorno, simplifica la instalación de dependencias y ayuda a evitar problemas de compatibilidad entre diferentes sistemas y máquinas de desarrollo.