位置引数argparse
、オプションの引数、およびargparse.REMAINDER
parser = argparse.ArgumentParser()
parser.add_argument('verbose', action="store")
parser.add_argument('--config', '-c', nargs="?", dest="config_file")
parser.add_argument('--dry-run', action="store_true", dest="dryrun")
parser.add_argument('args', nargs=argparse.REMAINDER, action="store")
サンプル実行:
python test.py verose="5" --config config.xml graph --dry-run
期待される出力:
verbose = "5"
config_file = config.xml
dryrun = True
args = ['graph']
実際の出力:
verbose = "5"
config_file = config.xml
dryrun = False
args = ['graph', '--dry-run']
私の要件は、、、を持っていることですverbose
。-c
コマンドラインオプション--config
および--dry-run
コマンドラインで提供されるその他のオプションは、コマンドラインargs
での引数の出現順序に関係なく、リストに格納する必要があります。私が間違っているところを助けてください。また、Python用のより良いコマンドラインパーサーは他にありますか?