| Ambos lados, revisión anteriorRevisión previa | |
| python:instalable [2025/07/16 12:01] – [setup.py] alberto | python:instalable [2025/07/16 12:05] (actual) – [main.py] alberto |
|---|
| \\ | \\ |
| En definitiva, realiza el flujo del programa.\\ | En definitiva, realiza el flujo del programa.\\ |
| | |
| | Cuando añadimos parámetros con add_argument, tenemos las siguientes opciones: |
| | ^ Parámetro ^ Descripción ^ Ejemplo ^ |
| | | `name or flags` | Nombre del argumento (posicional o con guiones). | `'--verbose'`, `'-v'`, `'archivo'` | |
| | | `action` | Qué hacer con el argumento al encontrarlo (ver tabla de abajo). | `'store'`, `'store_true'`, `'append'`, etc. | |
| | | `nargs` | Número de valores esperados (`?`, `*`, `+`, número entero, etc). | `nargs='?'`, `nargs=2` | |
| | | `const` | Valor constante usado cuando se emplea con ciertas acciones como `store_const`. | `const=42` | |
| | | `default` | Valor por defecto si no se proporciona el argumento. | `default='salida.txt'` | |
| | | `type` | Tipo de dato al que convertir el argumento. | `type=int`, `type=float`, `type=Path` | |
| | | `choices` | Lista de valores permitidos. | `choices=['bajo', 'medio', 'alto']` | |
| | | `required` | Si el argumento es obligatorio (solo para argumentos opcionales). | `required=True` | |
| | | `help` | Texto de ayuda mostrado al ejecutar `--help`. | `help='Archivo de entrada.'` | |
| | | `metavar` | Nombre que aparece en la ayuda en lugar del nombre real del argumento. | `metavar='FICHERO'` | |
| | | `dest` | Nombre del atributo en `args` donde se guarda el valor. | `dest='nivel'` | |
| | |
| | Para el parámetro "action" disponemos e estas posibilidades: |
| | ^ Acción ^ Descripción ^ Ejemplo de uso ^ |
| | | `'store'` | Guarda el valor dado (por defecto). | `--salida salida.txt` | |
| | | `'store_const'` | Guarda un valor constante (requiere `const=`). | `--modo`, `action='store_const', const='debug'` | |
| | | `'store_true'` | Guarda `True` si se especifica, `False` si no. | `--verbose`, `action='store_true'` | |
| | | `'store_false'` | Guarda `False` si se especifica, `True` si no. | `--no-cache`, `action='store_false'` | |
| | | `'append'` | Añade cada valor a una lista. | `--tag urgente --tag personal` → `['urgente',...]` | |
| | | `'append_const'` | Añade un valor constante a una lista (requiere `const=`). | (menos común) | |
| | | `'count'` | Cuenta cuántas veces aparece el argumento. | `-v -v -v` → `3` | |
| | | `'help'` | Muestra el mensaje de ayuda y termina. (automática con `--help`) | `--help` | |
| | | `'version'` | Muestra el número de versión y termina. (requiere `version=`) | `--version` | |
| | |
| |
| A continuación un ejemplo, en el que se define el comando "gendocs" y 3 subcomandos "simples", "compuestos" y "cruce", cada uno con sus parámetros de entrada: | A continuación un ejemplo, en el que se define el comando "gendocs" y 3 subcomandos "simples", "compuestos" y "cruce", cada uno con sus parámetros de entrada: |