必须从命令行读取某些数据(如电子邮件地址)的列表:
some_util -l email1@x.com email2@x.com
或者从文件中:
^{pr2}$如何使它不能在argparse中使用两个键-l和-l的组合
import argparse
import sys
def createCLParser():
parser = argparse.ArgumentParser()
parser.add_argument('-l', '--list', nargs='+', help='list from comand line')
parser.add_argument('-L', '--list-file', type=argparse.FileType(), help='list from file')
return parser
if __name__ == '__main__':
parser = createCLParser()
namespace = parser.parse_args(sys.argv[1:])
在argparse中是一个方法add_mutual_exclusive_group(),但它必须是可选的。在
因为其中一个是必需的,因此此用例更适合于子命令:
或者
^{pr2}$代码应该类似
将^{} 方法与
required=True
一起使用:用法:
^{pr2}$相关问题 更多 >
编程相关推荐