要使用argparse解析无前缀的可选参数,可以使用nargs='*'
参数来指定可选参数的数量为零个或多个。
下面是一个示例代码:
import argparse
# 创建ArgumentParser对象
parser = argparse.ArgumentParser()
# 添加一个无前缀的可选参数
parser.add_argument('files', nargs='*', help='输入文件列表')
# 解析命令行参数
args = parser.parse_args()
# 打印解析结果
print('输入的文件列表:', args.files)
这个示例代码中,nargs='*'
参数告诉argparse,files
参数可以接受零个或多个输入文件。在命令行中,输入的文件列表可以直接跟在命令之后,不需要前缀。
例如,可以使用以下命令运行上述代码:
python script.py file1.txt file2.txt file3.txt
输出结果将是:
输入的文件列表: ['file1.txt', 'file2.txt', 'file3.txt']
如果不提供任何文件,命令行将不会报错,且解析结果中的files
参数将是一个空列表[]
。