美文网首页
Python列表中相同key的字典相加

Python列表中相同key的字典相加

作者: h1code2 | 来源:发表于2019-11-13 11:04 被阅读0次
    # 怎么把列表中相同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)
    

    相关文章

      网友评论

          本文标题:Python列表中相同key的字典相加

          本文链接:https://www.haomeiwen.com/subject/gglhictx.html