a = [1,2,3,4,5,6] b = [7,7,9,8,8,8] # 字典 dic_A 合并列表a,b。 dic_A = dict(zip(a,b)) dic_A {1: 7, 2: 7, 3: 9, 4: 8, 5: 8, 6: 8}
我想 在字典dic_A中 将值相等的键合并,想要的到结果如下
dic_A = {12: 7, 3: 9, 456: 8}
请教一下,应该如何实现呢? 谢谢。
欢迎选择我的课程,让我们一起见证您的进步~~
這樣看可以嗎?
題主也沒有說清楚是從哪一步開始轉換,如果從一開始列表時就往這個目的操作,那這個問題實則不難。
from itertools import groupby from functools import reduce dic_a = {1: 7, 2: 7, 3: 9, 4: 8, 5: 8, 6: 8} dica = dict([reduce(lambda v, e: (int(str(v[0])+str(e[0])), k), g) for k, g in groupby(dic_a.items(), lambda v: v[1])]) >>> dica >>> {3: 9, 12: 7, 456: 8}
python3
setdefault
這樣看可以嗎?
題主也沒有說清楚是從哪一步開始轉換,如果從一開始列表時就往這個目的操作,那這個問題實則不難。
python3
雷雷setdefault