扯淡的工程师 2020-11-16 17:27 采纳率: 33.3%
浏览 1634
已采纳

python 列表中的字典键有重复,但值不同,如何把重复的键合并并且把值相加

python 列表中的字典键有重复,但值不同,如何把重复的键合并并且把值相加,例如:

list1 = [{a:1},{b:5},{c:89},{d:8},{b:90},{a:21},{c:7}],求大神指点。

  • 写回答

2条回答 默认 最新

  • PASH_dou 2020-11-16 19:25
    关注
    list1 = [{'a':1},{'b':5},{'c':89},{'d':8},{'b':90},{'a':21},{'c':7}]
    kz=[]
    vz=[]
    for i in list1:
        for k,v in i.items():
            if k in kz:
                z=kz.index(k)
                vz[z]=vz[z]+v
            else:
                kz.append(k)
                vz.append(v)
    dict(zip(kz,vz))

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?