13

argparse を使用して、範囲を指定するように、3 つの整数値を取るオプションを指定します: start、end、step。

parser.add_argument('--range', nargs=3, metavar=('start', 'end', 'step'), 
             type=int, help="specify a range')

ただし、3 つの値すべてにデフォルト値を指定する方法は明確ではありません。文字列として定義し、自分で解析する必要がありますか?

4

2 に答える 2

16

これはうまくいきますか?

parser.add_argument('--range', default=[4,3,2], 
                    nargs=3, metavar=('start', 'end', 'step'),
                    type=int, help='specify a range')

デモプログラム:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--range', default=[4,3,2], nargs=3, metavar=('start', 'end', 'step'),
             type=int, help='specify a range')
print parser.parse_args([])

# prints Namespace(range=[4, 3, 2])
于 2013-09-20T19:16:34.903 に答える