Python argparseで隠し引数を作成する


回答:


162

はい、helpオプションをadd_argumentに設定できますargparse.SUPPRESSargparseのドキュメントの例を次に示します

>>> 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

その後、それはと表示されtest ==SUPPRESS==ます。少なくともで使用しadd_parserた場合。
Thomas Ahle

1

非表示のものを有効にするオプションを追加してそれを行い、を見てそれを取得しsysv.argsます。

これを行う場合sys.argv、オプションが-s非表示のオプションを有効にすることを想定している場合、解析リストに直接選択した特別な引数を含める必要があります。

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ためにタイプミスsys.argv
pppery

これは妥当な解決策です(タイプミスを修正するための編集が受け入れられると)。
Siwel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.