最终我正在构建一个嵌套的json,并且在json中是一个列表 例如:
d = {"Names": [{"FirstName": "John", "LastName": "Smith"}]}
第一次说我得到了一个我要插入我的列表的更新:
update = {"FirstName": "Mary", "LastName": "Poppins"}
我需要更新列表并添加一个新条目:
d["Names"][]=update
我的问题是应该在“[]”中将它添加到列表的下一个元素而不指定特定的数字?
我希望它看起来像这样:
d = {"Names": [{"FirstName": "John", "LastName": "Smith"},{"FirstName": "Mary", "LastName": "Poppins"} ]}
我不知道怎么做而没有明确说明数字(我已经知道该怎么做)。我是以错误的方式解决这个问题吗?
答案 0 :(得分:1)
评论中张贴了Daniel:
d = {"Names": [{"FirstName": "John", "LastName": "Smith"}]}
这是包含一个键{}
的字典"Names"
。 "Names"
的值是包含一个字典的列表。
keys values
"Names" [{"FirstName": "John", "LastName":"Smith"}]
如果您想将一个元素添加到d["Names"]
中包含的列表中,请将其视为列表!
update = {"FirstName": "Mary", "LastName": "Poppins"}
d["Names"].append(update)
现在看起来像这样:
keys values
"Names" [{"FirstName": "John", "LastName":"Smith"},
{"FirstName": "Mary", "LastName":"Poppins"}]
所以你可以这样做:
for name in d["Names"]:
# d["Names"] is the [{...}, {...}]
# name is each element, so just each dictionary in turn
print(name["FirstName"], name["LastName"])