在ConfigArgParse中实现多行列表的方法是使用argparse
模块的RawTextHelpFormatter
类,并将多行列表作为一个字符串传递给参数的default
参数。
下面是一个示例代码:
import argparse
from argparse import RawTextHelpFormatter
parser = argparse.ArgumentParser(formatter_class=RawTextHelpFormatter)
parser.add_argument('--my_list', default='''\
- item1
- item2
- item3
''', help='''\
A multi-line list.
Example:
- item1
- item2
- item3
''')
args = parser.parse_args()
my_list = args.my_list.split('\n')
my_list = [item.strip() for item in my_list if item.strip()]
print(my_list)
在上面的示例中,--my_list
参数使用了RawTextHelpFormatter
类来保留多行列表的格式。default
参数中的多行列表被定义为一个字符串,并使用三引号来保留换行符。在解析参数后,我们使用split('\n')
方法将字符串拆分成行,并使用strip()
方法去除每行的空格和换行符。最后,我们将结果存储在my_list
变量中并打印出来。
领取专属 10元无门槛券
手把手带您无忧上云