我正在尝试save model to JSON with Keras并获得精简的JSON代码。
这里有没有可能用打印精美、人性化的JSON来保存呢?
发布于 2017-07-27 06:49:22
来自keras的to_json method接受**kwargs并将其传递给json.dumps。因此,这是一行解决方案:
print(model.to_json(indent=4))它会生成类似于@anton-vbr示例的结果。
发布于 2017-07-26 23:06:22
您可以使用pprint.pformat检索一个漂亮的字符串:
import pprint
json_str = model.to_json()
formatted_str = pprint.pformat(json.loads(json_str), indent=4)如果您不想保存已格式化的json的副本,而是希望将其保存到文件中,则可以使用pprint.pprint并指定带有文件处理程序的stream=...:
pprint.pprint(json.loads(json_str), indent=1, stream=open('model.json', 'w'))发布于 2017-07-27 06:29:36
您可以使用json库。文档地址:https://docs.python.org/3.6/library/json.html
import json
json_str = model.to_json()
print(json.dumps(json.loads(json_str),indent=4))要将其保存到文件,请执行以下操作:
import json
json_str = model.to_json()
with open("output.json", "w") as f:
json.dump(json.loads(json_str), f, indent=4)来自pandas的示例数据帧:
datetime temp weather
2017-07-27 02:00:00 22.94 light rain
2017-07-27 05:00:00 21.74 clear sky
2017-07-27 08:00:00 21.10 light rain
2017-07-27 11:00:00 27.69 clear sky结果如下:
{
"weather": {
"1501131600000": "clear sky",
"1501153200000": "clear sky",
"1501142400000": "light rain",
"1501120800000": "light rain"
},
"temp": {
"1501131600000": 21.74,
"1501153200000": 27.69,
"1501142400000": 21.1,
"1501120800000": 22.94
}
}https://stackoverflow.com/questions/45330718
复制相似问题