我在python中有以下json对象:
jsonobj = {
"a": {
"b": {
"c": var1,
"d": var2,
"e": [],
},
},
}
我想将键值元素追加到“e”中,但无法弄清楚它的语法。我尝试使用以下内容附加,但它没有用括号和引号右击:
jsobj["a"]["b"]["e"].append("'f':" + var3)
相反,我想要“e”如下:
"e":[
{"f":var3, "g":var4, "h":var5},
{"f":var6, "g":var7, "h":var8},
]
有没有人知道追加到这个json数组的正确方法?非常感谢。
答案 0 :(得分:25)
jsobj["a"]["b"]["e"].append({"f":var3, "g":var4, "h":var5})
jsobj["a"]["b"]["e"].append({"f":var6, "g":var7, "h":var8})
答案 1 :(得分:8)
只需将字典添加为字典对象而不是字符串:
jsobj["a"]["b"]["e"].append(dict(f=var3))
完整来源:
var1 = 11
var2 = 32
jsonobj = {"a":{"b":{"c": var1,
"d": var2,
"e": [],
},
},
}
var3 = 444
jsonobj["a"]["b"]["e"].append(dict(f=var3))
jsonobj将包含:
{'a': {'b': {'c': 11, 'd': 32, 'e': [{'f': 444}]}}}
答案 2 :(得分:2)
jsonobj["a"]["b"]["e"] += [{'f': var3, 'g' : var4, 'h': var5},
{'f': var6, 'g' : var7, 'h': var8}]