我有以下代码:
parser.add_argument('file', help='file to test')
parser.add_argument('-revs', help='range of versions', nargs='+', default=False)
使用时有没有办法不使用标志-revs
,如下所示:
./somescript.py settings.json 1 2 3 4
答案 0 :(得分:15)
是
您有多种解决方案:
或者使用argparse。从documentation(符合python3),您可以这样做:
if __name__ == '__main__':
parser = ArgumentParser()
parser.add_argument('file')
parser.add_argument('revs', metavar='N', type=int, nargs='+', help='revisions')
res = parser.parse_args()
pprint(res)
你可以看到结果:
$ ./test.py settings.json 1 2 3
Namespace(file='settings.json', revs=[1, 2, 3])