我正在编写一个Python命令,它有一个选项,如果使用的话,需要两个参数。一个参数是一个字符串,另一个是一个或多个字符串的列表。如果命令语法看起来像这样,那将是非常好的:
mycommand requiredarg [optionalarg optList...]
我知道我可以为nargs='?'
设置optionalarg
,为nargs='*'
设置optList
以获得类似的结果,但这样可以设置一个而另一个不设置。
mycommand 'thing' # Good
mycommand 'thing' 'ama' # Should be an error
mycommand 'thing' 'ama' 'bob' # Good
mycommand 'thing' 'ama' 'bob' 's' # Good
有没有办法在argparse中执行此操作?