gpt4 book ai didi

python - 从嵌套字典列表中删除重复值

转载 作者:太空宇宙 更新时间:2023-11-04 11:22:12 24 4
gpt4 key购买 nike

我有嵌套结构的字典列表。我需要删除所有重复值。我是 Python 新手,无法解决此任务。谁能帮帮我?

我的列表如下:

[  
{
"task_id":123,
"results":[
{
"url":"site.com",
"date":"04.18.2019"
},
{
"url":"another_site.com",
"date":"04.18.2019"
},
{
"url":"site1.com",
"date":"04.18.2019"
}
]
},
{
"task_id":456,
"results":[
{
"url":"site3.com",
"date":"04.18.2019"
},
{
"url":"site.com",
"date":"04.18.2019"
}
]
},
{
"task_id":789,
"results":[
{
"url":"site7.com",
"date":"04.18.2019"
},
{
"url":"site9.com",
"date":"04.18.2019"
},
{
"url":"site.com",
"date":"04.18.2019"
}
]
}
]

我只需要设置 site.com 一次。如果 url 的任何值重复 - 将其从 dict 中排除。

结果:任务 123,结果中包含 3 个字典任务 456,结果中有 1 个字典(不包括 site.com)任务 789,结果中有 2 个字典(不包括 site.com)

期望的输出应该是这样的:

[  
{
"task_id":123,
"results":[
{
"url":"site.com",
"date":"04.18.2019"
},
{
"url":"another_site.com",
"date":"04.18.2019"
},
{
"url":"site1.com",
"date":"04.18.2019"
}
]
},
{
"task_id":456,
"results":[
{
"url":"site3.com",
"date":"04.18.2019"
}
]
},
{
"task_id":789,
"results":[
{
"url":"site7.com",
"date":"04.18.2019"
},
{
"url":"site9.com",
"date":"04.18.2019"
}
]
}
]

最佳答案

results 成为您的数组。

u = set()
final = []
for dict in results:
for res in dict["results"]:
if res["url"] not in u:
u.add(res["url"])
final.append(res)
print(final)

关于python - 从嵌套字典列表中删除重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55743906/

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