我试图用argparse传递一个参数列表,但我发现的唯一方法是重写我想要传递的每个参数的选项:
我目前使用的是什么:
main.py -t arg1 -a arg2
Run Code Online (Sandbox Code Playgroud)
而且我想:
main.py -t arg1 arg2 ...
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
parser.add_argument("-t", action='append', dest='table', default=[], help="")
Run Code Online (Sandbox Code Playgroud)
vau*_*tah 13
用途nargs:
ArgumentParser对象通常将单个命令行参数与要采取的单个操作相关联.所述NARGS关键字参数与单个动作不同数量的命令行参数.
例如,if nargs设置为'+'
就像
'*',所有存在的命令行参数都被收集到一个列表中.此外,如果不存在至少一个命令行参数,将生成错误消息.
所以,你的代码看起来像
parser.add_argument('-t', dest='table', help='', nargs='+')
Run Code Online (Sandbox Code Playgroud)
这样,-t参数将list自动收集(您不必明确指定action).
| 归档时间: |
|
| 查看次数: |
1825 次 |
| 最近记录: |