0Pricing
Python Academy · Lección

Conceptos básicos de argparse

Analice argumentos de la línea de comandos

Conceptos básicos de argparse es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 4 lecciones en total.

¿Por qué argparse?

El módulo argparse (de la biblioteca estándar) permite crear interfaces de línea de comandos fáciles de usar. Analiza argumentos, valida tipos y genera automáticamente el texto de ayuda.

import argparse

parser = argparse.ArgumentParser(description='A demo tool')
print(type(parser).__name__)

Crear un analizador

Comience creando un ArgumentParser. La description aparece en la ayuda generada automáticamente.

import argparse

parser = argparse.ArgumentParser(description='Greet a user')
print('parser ready')

Argumentos posicionales

add_argument('name') define un argumento posicional obligatorio. Aquí pasamos una lista a parse_args para que se ejecute sin una línea de comandos real.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('name')
args = parser.parse_args(['Alice'])
print('Hello,', args.name)

Argumentos opcionales

Los nombres que comienzan por -- son opciones opcionales. Proporcione un default para cuando el usuario no las especifique.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--greeting', default='Hi')
args = parser.parse_args(['--greeting', 'Hey'])
print(args.greeting)
print(parser.parse_args([]).greeting)

Argumentos tipados

Use type=int (o float, etc.) para que argparse convierta y valide el valor. Una entrada incorrecta produce un error claro.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--count', type=int, default=1)
args = parser.parse_args(['--count', '5'])
print(args.count * 2)

Opciones booleanas

action='store_true' crea una opción que es False de forma predeterminada y True cuando está presente, perfecta para opciones como --verbose.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--verbose', action='store_true')
print(parser.parse_args(['--verbose']).verbose)
print(parser.parse_args([]).verbose)

Nombres cortos y largos

Asigne a un argumento una forma corta y otra larga, como -n y --name. Ambas establecen el mismo atributo.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default='world')
print(parser.parse_args(['-n', 'Sam']).name)

Opciones permitidas

Restrinja los valores permitidos con choices. argparse rechaza cualquier valor que no esté en la lista.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--mode', choices=['fast', 'slow'], default='fast')
print(parser.parse_args(['--mode', 'slow']).mode)

Varios valores con nargs

nargs='+' recopila uno o más valores en una lista, lo que resulta ideal para aceptar varias entradas a la vez.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('files', nargs='+')
args = parser.parse_args(['a.txt', 'b.txt', 'c.txt'])
print(args.files)

Opciones requeridas y ayuda

Añada required=True para hacer obligatoria una opción, y help= para documentarla en la pantalla de uso generada.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--id', required=True, type=int, help='record id')
args = parser.parse_args(['--id', '7'])
print('id is', args.id)

Una herramienta pequeña completa

Al combinar una entrada posicional, una opción tipada y una opción booleana se obtiene una CLI pequeña, pero real.

import argparse

parser = argparse.ArgumentParser(description='Repeat a message')
parser.add_argument('message')
parser.add_argument('--times', type=int, default=1)
parser.add_argument('--shout', action='store_true')
args = parser.parse_args(['hello', '--times', '2', '--shout'])
text = args.message.upper() if args.shout else args.message
for _ in range(args.times):
    print(text)

Comprobación rápida

Compruebe cuánto ha entendido de argparse.

Resumen

Ha aprendido los conceptos básicos de argparse:

  • ArgumentParser con argumentos posicionales y argumentos --optional.
  • type, default, choices y required validan la entrada.
  • action='store_true' para opciones booleanas; nargs para listas.
  • El texto de ayuda se genera automáticamente.

Siguiente tema: subcomandos y una gestión más completa de las opciones.

Preguntas frecuentes

¿La lección «Conceptos básicos de argparse» es gratis?

Sí — el texto completo de «Conceptos básicos de argparse» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Conceptos básicos de argparse»?

Analice argumentos de la línea de comandos Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Python Academy?

No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Conceptos básicos de argparse»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Python Academy?

Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conceptos básicos de argparse
  2. Subcomandos y opciones
  3. La biblioteca Click
  4. Salida enriquecida del terminal
← Volver a Python Academy