【发布时间】:2016-08-01 10:58:31
【问题描述】:
我正在使用 argparse 来处理我正在开发的应用程序中的命令行参数。就目前而言,一切都像宣传的那样工作。但是,我对单个参数的帮助格式有疑问。
optional arguments:
-k API_KEY, --key API_KEY
API Key to use when querying/updating records
-e EMAIL, --email EMAIL
Email to use when querying/updating records
在上面的帮助格式中,我正在研究如何解决重复的参数变量名称(即-k API_KEY, --key API_KEY)。这似乎是多余的,并导致帮助格式位于多行而不是单个连续行。这是相关代码。
if __name__ == '__main__':
parser=argparse.ArgumentParser(add_help=False)
parser_required=parser.add_argument_group('Required Arguments')
parser_required.add_argument('-k', '--key', dest='api_key', type=str, required=False, help='API Key to use when querying/updating records')
parser_required.add_argument('-e', '--email', dest='email', type=str, required=False, help='Email to use when querying/updating records')
不过,我不完全确定如何实现这一目标。这是所需的输出。
optional arguments:
-k, --key API Key to use when querying/updating records
-e, --email Email to use when querying/updating records
【问题讨论】:
-
stackoverflow.com/questions/9366369/… 讨论了各种选项。除了最简单的
metavar解决方案外,您还可以自定义HelpFormatter类。在几个 SO 问题中给出了如何做到这一点的建议。
标签: python-3.x argparse