我在使用 argparse 时遇到了另一个问题。
我正在尝试从命令行接受并存储字符串参数列表,并毫无错误地接受它们。在某些时候,我有一个解决方案,要求我执行类似于以下操作的操作:
backup.py -d C:\blah -d C:\anotherBlah
我想做的是同时接受参数,而不必在每次输入后指定 -d 。示例:
backup.py -d C:\blah C:\anotherBlah C:\anotherBlahBlah
并将它们存储为字符串类型列表而不是单个字符。
最佳答案
使用nargs='+'
:
parser.add_argument('-d', nargs='+')
例如,
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-d', nargs='+')
args = parser.parse_args(r'-d C:\blah C:\anotherBlah C:\anotherBlahBlah'.split())
print(args)
产量
Namespace(d=['C:\\blah', 'C:\\anotherBlah', 'C:\\anotherBlahBlah'])
关于python - 在 argparse 中接受来自命令行的字符串类型列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27280603/