Python 仅当设置了另一个参数时才需要参数
我正在编写一个Python命令,该命令有一个选项,如果使用该选项,则需要两个参数。一个参数是字符串,另一个是一个或多个字符串的列表。如果命令语法可以如下所示,那就太好了:Python 仅当设置了另一个参数时才需要参数,python,argparse,Python,Argparse,我正在编写一个Python命令,该命令有一个选项,如果使用该选项,则需要两个参数。一个参数是字符串,另一个是一个或多个字符串的列表。如果命令语法可以如下所示,那就太好了: mycommand requiredarg [optionalarg optList...] 我知道我可以为optionalarg设置nargs='?',为optList设置nargs='*'以获得类似的结果,但这将允许设置一个而不设置另一个 mycommand 'thing' # Good mycommand 'thin
mycommand requiredarg [optionalarg optList...]
我知道我可以为optionalarg
设置nargs='?'
,为optList
设置nargs='*'
以获得类似的结果,但这将允许设置一个而不设置另一个
mycommand 'thing' # Good
mycommand 'thing' 'ama' # Should be an error
mycommand 'thing' 'ama' 'bob' # Good
mycommand 'thing' 'ama' 'bob' 's' # Good
在argparse中是否有这样做的方法?如果您没有使用标记参数(
optionals
),只需查看sys.argv
,然后自己分配字符串可能会更简单。如果您没有使用标记参数(optionals
),查看sys.argv并自己分配字符串可能更简单。