Pythonでリスト内の要素の出現回数をカウントする方法
Python
でリスト内の特定の要素が何回出現しているかをカウントするための主な方法として、count()
メソッドとcollections.Counter
があります。それぞれの方法について見ていきましょう。
list.count()
メソッド
count()
は、リスト内で特定の要素が出現する回数をカウントするためのシンプルな方法です。
my_list = [1, 2, 3, 1, 2, 1]
print(my_list.count(1)) # 結果: 3
このメソッドはリスト全体を1つずつ確認し、指定した要素が見つかるたびにカウントを増やします。単一の要素のカウントには便利ですが、複数要素に対しては非効率です。
collections.Counter
を使った方法
Counter
はリスト内のすべての要素を一度にカウントし、要素とその出現回数を保持する辞書形式のオブジェクトを返します。複数の要素をカウントする場合、Counter
の方が効率的です。
from collections import Counter
my_list = [1, 2, 3, 1, 2, 1]
count_dict = Counter(my_list)
print(count_dict[1]) # 結果: 3
Counter
はパフォーマンス面でも優れており、複数の要素を一度にカウントしたい場合には特に有効です。
まとめ
- 単一の要素をカウントする場合、
list.count()
を使うと簡単です。 - 複数の要素を一度にカウントしたい場合や、大規模なリストには
collections.Counter
を使う方が効率的です。