gpt4 book ai didi

python - 在返回最后一次迭代的for循环中生成字典

转载 作者:太空宇宙 更新时间:2023-11-04 09:43:38 25 4
gpt4 key购买 nike

我正在遍历以下 JSON:

 "item 1": { 
"property 1": "value 1",
"property 2": "value 2",
"property 3": "value 3"
},
"item 2": {
"property 1": "value 1",
"property 2": "value 2",
"property 3": "value 3"
}

我想用前两个键的值制作一个字典 - property 1, property 2 - 对于每个项目(即排除 property 3)。下面的代码实现了预期的结果,但只存储了最近的序列:

for i in JSON:
value 1 = i["value 1"]
value 2 = i["value 2"]
...
JSON = json.dumps({'property 1':value 1,'property 2':value 2...})
return json.loads(JSON)

>> "item 2": {
"property 1": "value 1",
"property 2": "value 2" ...
# returns item 2, but I'd like item 1 also

如何存储每个 item 的输出而不覆盖另一个?

最佳答案

使用简单的迭代。

例如:

data = {"item 1": { 
"property 1": "value 1",
"property 2": "value 2",
"property 3": "value 3"
},
"item 2": {
"property 1": "value 1",
"property 2": "value 2",
"property 3": "value 3"
}
}

d = {}
for i in data:
d[i] = {"property 1": data[i]["property 1"], "property 2": data[i]["property 2"]}
print( d )

输出:

{'item 2': {'property 1': 'value 1', 'property 2': 'value 2'}, 'item 1': {'property 1': 'value 1', 'property 2': 'value 2'}}

关于python - 在返回最后一次迭代的for循环中生成字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50700155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com