Czy można dodać argument do Pythona argparse.ArgumentParser
bez pojawienia się go w użyciu lub help ( script.py --help
)?
Czy można dodać argument do Pythona argparse.ArgumentParser
bez pojawienia się go w użyciu lub help ( script.py --help
)?
Odpowiedzi:
Tak, możesz ustawić help
opcję add_argument
na argparse.SUPPRESS
. Oto przykład z dokumentacji argparse :
>>> parser = argparse.ArgumentParser(prog='frobble')
>>> parser.add_argument('--foo', help=argparse.SUPPRESS)
>>> parser.print_help()
usage: frobble [-h]
optional arguments:
-h, --help show this help message and exit
Robię to, dodając opcję włączenia ukrytych i łapię to, patrząc sysv.args
.
Jeśli to zrobisz, musisz dołączyć specjalny argument, który wybrałeś sys.argv
bezpośrednio na liście parsowania, jeśli zakładasz, że opcja polega -s
na włączeniu ukrytych opcji.
parser.add_argument('-a', '-axis',
dest="axis", action="store_true", default=False,
help="Rotate the earth")
if "-s" in sys.argv or "-secret" in sys.argv:
parser.add_argument('-s', '-secret',
dest="secret", action="store_true", default=False,
help="Enable secret options")
parser.add_argument('-d', '-drill',
dest="drill", action="store_true", default=False,
help="drill baby, drill")
sysv.args
to literówka sys.argv
?
test ==SUPPRESS==
. Przynajmniej w połączeniu zadd_parser
.