我正在尝试将一些数据合并到一个包含列表的字典列表中。如果“对象”键匹配,则会根据它们进行合并。如果相同的值匹配,也会添加到给定的“部分”。鉴于以下数据:
data = [
{
"semver":"1.0.0",
"sections":[
{
"name":"Add",
"messages":[
"add: comment here"
]
}
],
"object":"files.sh"
},
{
"semver":"1.0.0",
"sections":[
{
"name":"Add",
"messages":[
"add: Second comment here"
]
}
],
"object":"files.sh"
},
{
"semver":"1.0.0",
"sections":[
{
"name":"Fix",
"messages":[
"Comment here"
]
}
],
"object":"files.sh"
}
]
我希望最终实现这一目标
data = [
{
"semver":"1.0.0",
"sections":[
{
"name":"Add",
"messages":[
"add: comment here",
"add: Second comment here"
]
},
{
"name":"Fix",
"messages":[
"Fix: comment here"
]
}
],
"object":"files.sh"
},
]
for item in data:
for k, v in item.items():
print(k)
print(v)
任何指点或帮助都将不胜感激。到目前为止,我正在通过dict中的每个k,v对进行循环,但我不能在循环中的两个对之间的匹配上绞尽脑汁
下面的代码将为您完成此任务,但请注意,这可能不是执行此任务的最佳方式,如果您的所有目录中的键不一致,您可能会遇到一些键错误。 此外,如果在dicts中将
semver
键作为不同的值与object
的值匹配,则会丢失数据输出
试试这个:
相关问题 更多 >
编程相关推荐