subparsers
をPython 3ライブラリを使用して入れ子にして作成したいと考えています。ソリューションを実装しようとした瞬間に、私はこのエラーメッセージを取得しています:ここで引数を入れ子にしたサブパーザー
AttributeError: 'ArgumentParser' object has no attribute 'add_parser'
は、私が使用していたコードは次のとおりです。
def parse_args():
"""
Parse and validate user command line.
"""
# Top-level parser
parser = argparse.ArgumentParser(
description="foo"
)
parser.add_argument(
"-foo",
dest="foo",
help="foo",
required=True,
type=str
)
subparsers = parser.add_subparsers(help='sub-command help')
# Parser for the "payload" command
parser_payload = subparsers.add_parser(
"payload",
help="payload help"
)
parser_payload.add_argument(
"-b",
"--bar",
dest="bar",
help="bar",
type=str
)
# Parser for the "payload->foobar" command
parser_payload_foobar = parser_payload.add_parser(
"foobar"
help="foobar help"
)
parser_payload_foobar.add_argument(
"-bf",
"--barfoo",
dest="barfoo",
help="barfoo",
type=str
)
return parser.parse_args()
どのバージョンですか?あなたは完全な痕跡を与えることができますか?機能を少し下げますか? – jonrsharpe