【问题标题】:How do I find the number of items in a duplicate within a list in python? [duplicate]如何在python的列表中找到重复项的数量? [复制]
【发布时间】:2021-12-26 03:23:54
【问题描述】:

我已经有一个函数,它可以像这样返回重复的数字:

X = [1, 1, 1, 2, 2]
def Dupe(l):
    return set([x for x in l if l.count(x) > 1])
print(Dupe(X))

这将返回 {1, 2}。 我想做的是有这样的功能:

X = [1, 1, 1, 2, 2]
def DupeL(l):
    (CODE HERE)
print(DupeL(X))

这将返回 {3, 2} 因为有三个 1 和两个 2。有什么想法吗?

【问题讨论】:

  • 你可以写set([1, 1, 1, 2, 2])它返回{1,2}
  • 第二部分搜索collections.Counter

标签: python list function duplicates


【解决方案1】:

你说的没错。但我建议您创建一个 dict 来显示元素以及重复的次数。迭代集合并检查列表中集合的每个元素的出现。只需使用.count() 方法即可获取列表中的出现次数。然后将其添加到一个空字典中,该字典向您显示元素及其重复项。你的代码:

x=[1,1,1,2,2]
def Dupe(x):
    di={}
    c=set([v for v in x if x.count(v)>1])
    for i in c:
        di[i]=x.count(i)
    return di
print(Dupe(x))

【讨论】:

    猜你喜欢
    • 2013-03-29
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多