Czy można dodać argument do Pythona argparse.ArgumentParserbez pojawienia się go w użyciu lub help ( script.py --help)?
Czy można dodać argument do Pythona argparse.ArgumentParserbez pojawienia się go w użyciu lub help ( script.py --help)?
Odpowiedzi:
Tak, możesz ustawić helpopcję add_argumentna 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.argvbezpośrednio na liście parsowania, jeśli zakładasz, że opcja polega -sna 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.argsto literówka sys.argv?
test ==SUPPRESS==. Przynajmniej w połączeniu zadd_parser.