Argumentos de línea de comandos en Python: Guía completa

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Fundamentos de los argumentos de línea de comandos en Python

Trabajar con argumentos de línea de comandos es una habilidad fundamental para desarrollar scripts en Python flexibles y fáciles de usar. En lugar de codificar datos directamente en el programa, los desarrolladores pueden pasar parámetros al ejecutar el script. En Python, el módulo argparse, incluido en la biblioteca estándar, es la herramienta más utilizada para procesar argumentos de forma potente y sencilla.

Ventajas de usar argumentos de línea de comandos

El uso de argumentos de línea de comandos en Python ofrece múltiples beneficios:

  • Mayor flexibilidad del programa al poder cambiar su comportamiento sin modificar el código fuente
  • Control del comportamiento del programa sin necesidad de editar el código
  • Facilidad para automatizar tareas y crear herramientas CLI
  • Integración sencilla de scripts en pipelines y procesos CI/CD
  • Pruebas más simples del programa con diferentes parámetros

Ejemplos de programas con argumentos de línea de comandos

Muchas herramientas populares utilizan activamente argumentos de línea de comandos:

  • Instaladores de paquetes (pip, apt, yarn)
  • Herramientas de gestión de archivos (tar, zip, rsync)
  • Sistemas de compilación (make, cmake, gradle)
  • Herramientas de desarrollo (git, docker, kubectl)
  • Scripts propios para automatizar flujos de trabajo

Importar y configurar el módulo argparse

El módulo argparse está incluido en la biblioteca estándar de Python desde las versiones 2.7 y 3.2. No requiere instalación adicional de paquetes.

import argparse

Crear un analizador básico

Para empezar a trabajar con argumentos, primero debes crear una instancia de la clase ArgumentParser:

parser = argparse.ArgumentParser(description="Descripción del programa")

Primer ejemplo de uso de argparse

Veamos un script simple que recibe un nombre de usuario y muestra un saludo personalizado:

import argparse

parser = argparse.ArgumentParser(description="Programa de saludo simple")
parser.add_argument("name", help="Nombre del usuario")
args = parser.parse_args()

print(f"¡Hola, {args.name}!")

El script se ejecuta de la siguiente manera:

python script.py Carlos

Resultado de la ejecución:

¡Hola, Carlos!

Tipos de argumentos en argparse

Argumentos obligatorios

Los argumentos obligatorios son parámetros sin los cuales el programa no puede ejecutarse. Se definen sin prefijos y el usuario debe proporcionarlos obligatoriamente.

parser.add_argument("filename", help="Nombre del archivo a procesar")
parser.add_argument("output_dir", help="Directorio para guardar los resultados")

Argumentos opcionales

Los argumentos opcionales suelen comenzar con un guion (-) para la forma corta o dos guiones (--) para la forma larga. Proporcionan funcionalidad adicional al programa.

parser.add_argument("-v", "--verbose", help="Mostrar información detallada", action="store_true")
parser.add_argument("-o", "--output", help="Archivo para guardar los resultados")

Trabajar con tipos de datos de argumentos

Por defecto, todos los argumentos se tratan como cadenas de texto. Para especificar un tipo de dato diferente, se usa el parámetro type:

parser.add_argument("number", type=int, help="Ingresa un número entero")
parser.add_argument("price", type=float, help="Precio del producto")
parser.add_argument("enabled", type=bool, help="Activar la función")

Al pasar un n

Blogs

Book Recommendations