Ric*_*son 4 python parameters argparse
使用argparse,我有以下行:
parser.add_argument("-p", "--parameter", type=str, default=None, nargs='+',
help="some option",
choices=allValues.keys()
)
Run Code Online (Sandbox Code Playgroud)
结果help消息显示以下所有值allValues:
-p {a,b,c,d,e,f,g,h,i,l,m; a,b,c,d,e,f,g,h,i,l,m} [{a,b,c,d,e,f,g,h,i,l,m} ...] , - 参数{a,b,c,d,e,f,g,h,i,l,m; a,b,c,d,e,f,g,h,i,l,m} [{a,b,c,d,e,f,g,h,i,l,m; a,b,c,d,e,f,g,h,i,l,m} ...]某种选择
我可以 {a ,b ,c , d, e, f, g, h, i, l, m; a ,b ,c , d, e, f, g, h, i, l, m}从上面删除,只显示参数的名称和帮助信息吗?
使用metavar参数::
parser.add_argument("-p", "--parameter", type=str, default=None, nargs='+',
help="some option",
choices=allValues.keys(),
metavar='PARAMETER'
)
Run Code Online (Sandbox Code Playgroud)
这会给::
-p PARAMETER, --parameter PARAMETER some option
Run Code Online (Sandbox Code Playgroud)
如果您不想显示元变量,可以考虑传递''给metavar.否则,我相信你必须创建自己的自定义格式化程序类并将其传递给ArgumentParser.