如何在python中

时间:2016-01-12 19:41:54

标签: python json format

我有一个JSON字符串(下面显示的简化版本),我希望能够将其格式化以动态地将值插入“item”字段:

"""{"a":[{"id":1,"item":{}},{"id":2,"item":{}}]}""".format(8,0)

当我这样做时,我得到KeyError: '"a"',大概是因为我需要逃避所有其他括号。我拥有的实际json相当复杂,逃避所有括号将是一件痛苦的事。有更简单的方法吗?

2 个答案:

答案 0 :(得分:1)

使用buildin json模块:

import json
data = json.loads(yourjson)
data["a"][0]["item"] = 8
data["a"][1]["item"] = 0
text = json.dumps(dict)

答案 1 :(得分:0)

您可以使用bigrquery样式格式:

%

然而,这仍然感觉非常脆弱。我认为使用python对象(例如"""{"a":[{"id":1,"item":%s},{"id":2,"item":%s}]}""" % (8,0) dict)可能更好,然后您可以使用list将这些对象转换为JSON