from argparse import ArgumentParser
parser = ArgumentParser()
subs = parser.add_subparsers()
parser_save = subs.add_parser('save')
parser_save.add_argument('--redis', default='azoth')
parser_save.add_argument('-d', '--date', type=int, default=None)
parser_save.add_argument('output')
parser_save.set_defaults(main=save)
parser_load = subs.add_parser('load')
parser_load.add_argument('--redis', default='azoth')
parser_load.add_argument('-d', '--date', type=int, default=None)
parser_load.add_argument('archive')
parser_load.set_defaults(main=load)
args = parser.parse_args()
args.main(**vars(args))
这样的代码,如果运行程序时不带任何参数,希望能显示正确的help信息,(最简单显示有几个subparser)
但现在运行后出现的出错信息是:
AttributeError: 'Namespace' object has no attribute 'main'
请教一下,应该怎么改才能让程序在不带参数运行时正确显示help信息?
谢谢。
--
FROM 101.88.154.*