簡體   English   中英

Python字典計數

[英]Python dictionary counting

我有一本字典

a={}
a['A']=1
a['B']=1
a['C']=2

我需要輸出以下內容

1 has occurred 2 times
2 has occurred 1 times

做這個的最好方式是什么。

這可以通過collections.Counter()輕松(高效)地完成,它旨在(毫不奇怪)對事物進行計數:

>>> import collections
>>> a = {"A": 1, "B": 1, "C": 2}
>>> collections.Counter(a.values())
Counter({1: 2, 2: 1})

這為您提供了一個類似於字典的對象,可以輕松地用於生成所需的輸出。

使用Counter類:

from collections import Counter

a = {}
a["A"] = 1
a["B"] = 1
a["C"] = 2

c = Counter(a.values())

c
=> Counter({1: 2, 2: 1})

文檔中

計數器是用於計算可哈希對象的dict子類。 它是一個無序集合,其中元素存儲為字典鍵,其計數存儲為字典值。 計數可以是任何整數值,包括零或負計數。 Counter類類似於其他語言的包或多集。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM