gpt4 book ai didi

python - 用另一个字典中的项目替换字典列表中的项目

转载 作者:行者123 更新时间:2023-11-30 21:58:00 25 4
gpt4 key购买 nike

我有以下词典:

d1 = {"00f_5" :[1,2,3], "00f_6": [1,2,3]}

d2 = [{"marker":"00f_5",1: 'AAA'},{"marker":"00f_6", 1: 'CCC'},{"marker":"00f_5", 2:"AAC"}]

我想要以下输出:

d1 = {"00f_5" :["AAA","AAC",3], "00f_6": ["CCC",2,3]}

我尝试了很多次,但还是没能成功。任何帮助将不胜感激。

最佳答案

您可以构建一个字典,将标记映射到子字典,该子字典将数字键映射到 3 个字母的代码,以便给定标记和数字键,您可以使用 dict.get 获取映射代码(如果存在)的方法:

d = {}
for s in d2:
d.setdefault(s['marker'], {}).update(s)
d1 = {k: [d[k].get(i, i) for i in l] for k, l in d1.items()}

因此给定:

d1 = {"00f_5" :[1,2,3], "00f_6": [1,2,3]}
d2 = [{"marker":"00f_5",1: 'AAA'},{"marker":"00f_6", 1: 'CCC'},{"marker":"00f_5", 2:"AAC"}]

d1 将变为:

{'00f_5': ['AAA', 'AAC', 3], '00f_6': ['CCC', 2, 3]}

关于python - 用另一个字典中的项目替换字典列表中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55073696/

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