2017-06-11 10 views
-2

は、例で説明簡単な:パイソン辞書カウンター?

events = ['foo', 'bar', 'biz', 'foo', 'foo'] 
events_counter = {} 
for event in events: 
    if event not in events_counter: # { 
     events_counter[event] = 1 # { 
    else:       # { 
     events_counter[event] += 1 # { 
print events_counter 

# {'biz': 1, 'foo': 3, 'bar': 1} 

より神託の方法で強調表示されたコードを実装する方法はありますか?

events_counter.count_up(event) 

はい、自分の手続きを書いてもいいと思います。ありがとうございました。

+0

'collections.Counter'はあなたの友達です。質問はあまりにも簡単です – RomanPerekhrest

+0

@RomanPerekhrest OPはそれが必ずしも悪い質問にならないことを認識していないので、質問は整形され、明確です。それは、ええ、実際には、それはグーグルが見つかりましたのOPを言った。 –

+0

"python counter"を検索することはありませんでしたか? –

答えて

7

Pythonのは、このためにCounterデータ構造に組み込まれています:

from collections import Counter 
events = ['foo', 'bar', 'biz', 'foo', 'foo'] 
cc = Counter(events) 
print(cc) 

出力:

Counter({'foo': 3, 'bar': 1, 'biz': 1}) 
+0

ahahaの謝罪、私は簡単にコレクションを見ましたが、それを逃してしまったのでしょうか。 – Raven

関連する問題