如何在Python3中访问Counter对象的计数值?

时间:2018-12-24 15:22:19

标签: python-3.x

场景

鉴于几行代码,我已经包含了这一行

counts = Counter(rank for rank in ranks)

因为我要查找字符串中字符的最高计数。

所以我最终得到了以下对象:

Counter({'A': 4, 'K': 1})

在这里,我要查找的值是4,因为它是最高计数。假定该对象称为counts,然后max(counts)返回'K',大概是因为'K' > 'A'是unicode。

问题

如何获取最大的计数/值,而不是“最大”键?

2 个答案:

答案 0 :(得分:3)

您可以按照他人的建议使用max。但是请注意,Counter类提供了most_common(k)方法,该方法稍微灵活一些:

counts.most_common(1)[0][1]

它的真实performance benefits只有在您想要超过1最常见的元素时才会显示。

答案 1 :(得分:1)

也许

max(counts.values())

会工作吗?


来自Python documentation

  

Counter是用于计数可哈希对象的dict子类。这是一个集合,其中元素存储为字典键,其计数存储为字典值。

因此,您应该将计数器视为字典。要获得最大价值,请在计数器max()上使用.value()