我有一个JSON字符串(下面显示的简化版本),我希望能够将其格式化以动态地将值插入“item”字段:
"""{"a":[{"id":1,"item":{}},{"id":2,"item":{}}]}""".format(8,0)
当我这样做时,我得到KeyError: '"a"'
,大概是因为我需要逃避所有其他括号。我拥有的实际json相当复杂,逃避所有括号将是一件痛苦的事。有更简单的方法吗?
答案 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
。