2014-03-31 3 views
6

Ich benutze Python Argparse und möchte die-h-Flag für meine eigenen Zwecke verwenden. Hier ist der Haken - ich möchte immer noch haben - helfen, verfügbar zu sein, so scheint es, dass parser = argparse.ArgumentParser('Whatever', add_help=False) nicht ganz die Lösung ist.Überschreibt argparse -h Verhalten Teil 2

Gibt es eine einfache Möglichkeit, das Flag -h erneut zu verwenden, während die Standardfunktion von --help beibehalten wird?

Antwort

9

initialisieren ArgumentParser mit add_help=False, fügen --help Argument mit action="help":

import argparse 

parser = argparse.ArgumentParser(add_help=False) 
parser.add_argument('--help', action="help") 
parser.add_argument('-h', help='My argument') 

args = parser.parse_args() 
... 

Hier ist, was auf der Kommandozeile:

$ python test_argparse.py --help 
usage: test_argparse.py [--help] [-h H] 

optional arguments: 
    --help 
    -h H My argument 

Hoffnung das ist, was Sie brauchen.

+0

Das ist es genau. Vielen Dank! – user3481267