【问题标题】:How can i select duplicates in a dict list如何在字典列表中选择重复项
【发布时间】:2018-12-22 20:41:05
【问题描述】:

Python 新手:我正在使用一个字典列表来存储一个 ascii 字符和一个分数,我现在想做的是,填写另一个包含所有重复字符(与分数无关)的字典列表。我怎样才能做到这一点? 我将这些值附加到列表中:lpdictlist.append({"ascii_code":a[2],"confidence":a[6]})

【问题讨论】:

  • 你应该发布一个示例输入/期望的输出。
  • 什么是“字典列表”?
  • @RoryDaulton 字典列表,对不起!

标签: python list dictionary duplicates append


【解决方案1】:

您可以使用集合模块中的Counter 类。一种可能的解决方案(即使 ascii_code 是整数值也有效):

from collections import Counter

lpdictlist = []
# lpdictlist.append({"ascii_code":a[2],"confidence":a[6]})
lpdictlist.append({"ascii_code":'a', "confidence":1})
lpdictlist.append({"ascii_code":'b', "confidence":2})
lpdictlist.append({"ascii_code":'a', "confidence":4})
lpdictlist.append({"ascii_code":'d', "confidence":10})

c = Counter(i['ascii_code'] for i in lpdictlist)
new_list = [k for k, v in c.items() if v > 1]
print(new_list)

打印:

['a']

【讨论】:

    猜你喜欢
    • 2013-10-29
    • 2019-01-15
    • 1970-01-01
    • 1970-01-01
    • 2014-11-26
    • 2016-01-02
    • 2021-11-17
    • 2016-01-10
    相关资源
    最近更新 更多