Argparse en Python
Uso de `argparse` para Manejar Argumentos de Línea de Comandos[editar]
El módulo `argparse` en Python permite crear interfaces de línea de comandos fáciles de usar. Puedes definir los argumentos que tu programa espera y el módulo se encargará de analizarlos y proporcionarte un acceso conveniente a ellos.
Aquí hay un ejemplo sencillo de cómo usar `argparse` para manejar argumentos de línea de comandos.
Crear un Script con `argparse`[editar]
import argparse
def main():
parser = argparse.ArgumentParser(description="Un ejemplo de cómo usar argparse")
parser.add_argument('nombre', type=str, help='El nombre de la persona')
parser.add_argument('edad', type=int, help='La edad de la persona')
parser.add_argument('--saludo', type=str, default='Hola', help='El saludo a usar')
args = parser.parse_args()
print(f"{args.saludo}, {args.nombre}. Tienes {args.edad} años.")
if __name__ == "__main__":
main()
Cómo Ejecutar el Script[editar]
Guarda el script anterior en un archivo llamado `saludo.py` y ejecútalo desde la línea de comandos:
python saludo.py Ana 30
Esto producirá la salida:
Hola, Ana. Tienes 30 años.
Puedes cambiar el saludo usando la opción `--saludo`:
python saludo.py Ana 30 --saludo Buenos días
Esto producirá la salida:
Buenos días, Ana. Tienes 30 años.
Desglose del Ejemplo[editar]
Importar `argparse`[editar]
Importa el módulo `argparse` para manejar argumentos de línea de comandos.
Crear un Analizador de Argumentos[editar]
- `ArgumentParser` se utiliza para crear un nuevo analizador de argumentos.
- El parámetro `description` proporciona una descripción de alto nivel de lo que hace el script.
Definir Argumentos[editar]
- `add_argument` define los argumentos que el script aceptará.
- El primer argumento (`nombre`) es obligatorio y se espera que sea un string.
- El segundo argumento (`edad`) es obligatorio y se espera que sea un entero.
- El argumento opcional (`--saludo`) tiene un valor por defecto de `'Hola'`.
Analizar Argumentos[editar]
- `parse_args()` analiza los argumentos proporcionados en la línea de comandos y devuelve un objeto con los valores.
Usar los Argumentos[editar]
- Los valores de los argumentos se acceden como atributos del objeto devuelto por `parse_args()`.
Ventajas de Usar `argparse`[editar]
- Facilidad de Uso: Facilita la creación de interfaces de línea de comandos amigables.
- Documentación Automática: Genera automáticamente mensajes de ayuda y documentación para los argumentos.
- Validación: Valida los argumentos y proporciona mensajes de error claros si los argumentos no cumplen con las expectativas.
- Flexibilidad: Soporta argumentos posicionales y opcionales, además de múltiples tipos de datos y opciones avanzadas.