Sto usando il modulo argparse Python per i sottocomandi della riga di comando nel mio programma. Il mio codice è fondamentalmente come questo:Sottodirectory Argparse: nascondi il metavar nel comando che elenca
import argparse
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(title="subcommands", metavar="<command>")
subparser = subparsers.add_parser("this", help="do this")
subparser = subparsers.add_parser("that", help="do that")
parser.parse_args()
Durante l'esecuzione di "python test.py --help" Vorrei elencare i sottocomandi disponibili. Attualmente ottengo questo output:
usage: test.py [-h] <command> ...
optional arguments:
-h, --help show this help message and exit
subcommands:
<command>
this do this
that do that
Posso in qualche modo rimuovere la riga <command>
nei sottocomandi quotazione e ancora tenerlo in linea di utilizzo? Ho cercato di dare help = argparse.SUPPRESS come argomento per add_subparsers, ma che nasconde semplicemente tutti i sottocomandi nell'output della guida.
Cosa sull'impostazione 'a' metavar' none' (o lasciarlo fuori)? - O impostazione 'metavar = ''' ... – mgilson
Grazie per aver risposto! Se lo imposto su None, ottengo invece solo una lista di tutti i comandi e se utilizzo 'metavar = ''' Ricevo una riga vuota. In entrambi i casi, perdo la metavar nella riga di utilizzo. –
Oh, ottengo quello che stai cercando ora. Sfortunatamente non so come farlo accadere. – mgilson