如何使用argsparse以使具有相同效果的脚本选项出现在同一个“帮助”行中

时间:2016-03-24 09:06:47

标签: python

我正在使用argsparse来解析传递给我的python脚本的选项。

我想启用传递'-a',并允许传递'-b'具有相同的效果。

没问题,我会拨打parser.add_argument()两次,说明相同:

parser.add_argument('-a', help='do something')
parser.add_argument('-b', help='do something')

但现在显示脚本帮助时,我会看到两者:

-a          do something  
-b          do something

这太丑了。

我希望 { - a,-b} { - a | b)

我无法在argsparse文档中找到任何解决此问题(诚然,不是关键)的问题。

1 个答案:

答案 0 :(得分:1)

您可以尝试将两个参数传递给同一个add_argument调用:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-a', '-b',  help='do something')

parser.parse_args(['--help'])

输出

usage: test.py [-h] [-a A]

optional arguments:
  -h, --help  show this help message and exit
  -a A, -b A  do something