合并id,累加value

l = {"dic":[{"id":1,"value":4},{"id":1,"value":3},{'id':1,"value":8},{"id":2,"value":4},{"id":2,"value":23},{'id':2,"value":8}]}
from operator import itemgetter
from itertools import groupby
row = l["dic"]
print(row)
for id,va in groupby(row,key=itemgetter("id")):
    data = {}
    sm = []
    key = None
    for i in va:
        key=i["id"]
        x = i["value"]
        sm.append(x)

    data["id"]=key
    data["value"]=sum(sm)
    print(data)

相关文章: