Python 基于互斥群参数的条件子parser
我正在使用我的代码扩展credstash中的代码: 我的问题是,我想添加一个必需的参数,但前提是您选择-b作为互斥的参数之一(您必须提供bucket名称以及'credstash'名称),因此s3需要2个参数,而dynamodb-t参数只需要一个(仅表名) 现在,代码已经为您要采取的操作提供了子parser。我对python很陌生,对argparse也很陌生,所以对于如何有效地添加条件参数-c Credstash(但只有在使用-b时)的任何建议都是值得赞赏的Python 基于互斥群参数的条件子parser,python,argparse,credstash,Python,Argparse,Credstash,我正在使用我的代码扩展credstash中的代码: 我的问题是,我想添加一个必需的参数,但前提是您选择-b作为互斥的参数之一(您必须提供bucket名称以及'credstash'名称),因此s3需要2个参数,而dynamodb-t参数只需要一个(仅表名) 现在,代码已经为您要采取的操作提供了子parser。我对python很陌生,对argparse也很陌生,所以对于如何有效地添加条件参数-c Credstash(但只有在使用-b时)的任何建议都是值得赞赏的 用法:credstash[-h][-
用法:credstash[-h][-r区域][b BUCKET |-t TABLE][p PROFILE |-n ARN]
{delete,get,getall,list,put,setup}…
从我的评论中复制:
尝试为-b
设置nargs=2
。使用情况会是这样的
[-b BUCKET BUCKET | -t TABLE]
添加metavar=('bucket','credstash')
(元组,而不是列表)应将用法更改为:
[-b bucket credstach | -t TABLE]
你的要求不是很清楚。但是我想知道为
-b
设置nargs=2
是否有效。然后,使用情况看起来像[-b BUCKET |-t TABLE]
(尽管您可以使用metavar
对其进行优化)。这正是我想要的。我将尝试以这种方式实现它。谢谢@hpaulj