argparse读取或存储json-argparse to json

#保存到json
def save():
    parser = argparse.ArgumentParser()

    parser.add_argument('--seed_1', type=int, default=98, help='seed')#必须seed_1,不能是seed-1,这样可以统一命名.args.seed_1
    parser.add_argument('--epoch', type=int, default=100, help='epoch')
    print(parser,type(parser))
    args = parser.parse_args()
    print(args.seed_1)#98
    print(args,type(args))#Namespace(epoch=100, seed=98) <class 'argparse.Namespace'>
    print(vars(args))#vars() 函数返回对象object的属性和属性值的字典对象。{'seed': 98, 'epoch': 100}
    with open('./test_arg.json', 'wt') as f:
        json.dump(vars(args), f, indent=4) # indent意思就是json格式缩进4个space,便于肉眼查看
        #dump()方法的第一个参数是dict,第二个参数是打开的文件句柄,第三个参数是缩进的位数
#加载json
def load():
    parser = argparse.ArgumentParser()
    args = parser.parse_args()
    args_dict = vars(args)
    print(args_dict)#{}
    with open('./test_arg.json', 'rt') as f:
        args_dict.update(json.load(f))
    print(args_dict)#{'seed_1': 98, 'epoch': 100}

参考:[https://blog.csdn.net/bagba/article/details/124585168?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-124585168-blog-115287432.235%5Ev32%5Epc_relevant_default_base&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-124585168-blog-115287432.235%5Ev32%5Epc_relevant_default_base&utm_relevant_index=2]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值