python保存数据json_Python创建并保存json文件,支持数据更新保存

import json

class Params():

"""Class that loads hyperparameters from a json file.

Example:

```

params = Params(json_path)

print(params.learning_rate)

params.learning_rate = 0.5 # change the value of learning_rate in params

```

"""

def __init__(self, json_path):

with open(json_path) as f:

params = json.load(f) # 将json格式数据转换为字典

self.__dict__.update(params)

def save(self, json_path):

with open(json_path, 'w') as f:

json.dump(self.__dict__, f, indent=4) # indent缩进级别进行漂亮打印

def update(self, json_path):

"""Loads parameters from json file"""

with open(json_path) as f:

params = json.load(f)

self.__dict__.update(params)

@property # Python内置的@property装饰器就是负责把一个方法变成属性调用的

def dict(self):

"""Gives dict-like access to Params instance by `params.dict['learning_rate']"""

return self.__dict__

if __name__ == '__main__':

parameters = {"SEED": 1,

"dataset": "Omniglot",

"meta_lr": 1e-3,

"num_episodes": 5000,

"num_classes": 5,

"num_samples": 1,

"num_query": 10,

"num_steps": 100,

"num_inner_tasks": 8,

"num_train_updates": 1,

"num_eval_updates": 1,

"save_summary_steps": 100,

"num_workers": 1

}

json_str = json.dumps(parameters, indent=4)

with open('params.json', 'w') as f: # 创建一个params.json文件

f.write(json_str) # 将json_str写到文件中

params = Params('params.json')

params.SEED = 2 # 修改json中的数据

params.save('params.json') # 将修改后的数据保存

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值