我正在使用Python中的argparse模块编写命令行界面。总共我想从命令行调用5个不同的州,我已经为它们分配了一个单独的命令行subparser,如下所示:
FUNC_DESC = 'Function description.'
FUNC_YHLP = 'Argument description'
FUNC_PRSR = SUBPARSERS.add_parser('function_name', description=FUNC_DESC)
FUNC_PRSR.set_defaults(func=my_func)
FUNC_PRSR.add_argument('-a', '--arg', help=UPDATE_YHLP)
此方法的问题在于,每次用户想要从命令行调用函数时,脚本都需要在实际运行所需函数之前重新创建这些子解析器。这需要一个非常小但很明显的时间。我希望用户能够多次调用函数(使用不同的参数),这种延迟很烦人,似乎浪费了时间。
是否有更有效的方法来设置命令行界面?我愿意使用argparse以外的东西。