argparse的加载和生成配置
arconfig的Python项目详细描述
将选项保存/加载到配置中
>>>fromarconfigimportGenConfigAction,LoadConfigAction>>>parser=argparse.ArgumentParser()>>>parser.add_argument("--config",action=LoadConfigAction)# add it before another options>>>parser.add_argument("--gen-config",action=GenConfigAction)>>>parser.add_argument('-s',action='store',dest='simple_value',help='Store a simple value')>>>parser.add_argument('-c',action='store_const',dest='constant_value',...const='value-to-store',help='Store a constant value')>>>parser.add_argument('-t',action='store_true',default=False,...dest='boolean_switch',help='Set a switch to true')>>>parser.add_argument('-f',action='store_false',default=False,...dest='boolean_switch',help='Set a switch to false')
生成简单配置
$pythonscript.py--gen-config{"simple_value":null,"constant_value":null,"config":null,"boolean_switch":false}
并加载它
$pythonargparse_config.py--gen-config>/tmp/test.json$pythonargparse_config.py--config=/tmp/test.json{"simple_value":null,"constant_value":null,"config":null,"gen_config":false,"boolean_switch":false}
所有其他参数都会覆盖配置值(但会添加计数器)。