1. 程式人生 > >列表中相同key的字典相加

列表中相同key的字典相加

 

# 怎麼把列表中相同key的字典相加,也就是id的值加id的值,doc_count的值加doc_count的值

# 目標列表
l=[{'id': 5, 'doc_count': 129}, {'id': 1, 'doc_count': 3}, {'id': 1, 'doc_count': 64}]

#統計ID,將不同的id放入一個列表中
lid=[]

for i in l:
    if i['id'] not in lid:
        lid.append(i['id'])

#結果列表
lm=[]
#根據lid,生成結果列表
for
i in lid: lm.append({'id':i,'doc_count':0}) #相同id的doc_count數相加 for i in l: for o in lm: if i['id'] == o['id']: o['doc_count']=o['doc_count']+i['doc_count'] print(lm)