【Python入門】PythonのCounter.fromkeys関数とは?使い方と活用方法を徹底解説(Python 3.11)

Python

はじめに

Pythonのcollectionsモジュールに含まれるCounterクラスは、要素の出現回数をカウントする際に便利な機能を提供しています。その中でもCounter.fromkeys関数は、特定のキーの初期値をまとめて設定できる便利なメソッドです。本記事では、Python 3.11に対応したCounter.fromkeys関数の使い方や活用方法について詳しく解説します。

Counter.fromkeys関数とは?

Counter.fromkeys関数は、指定されたキーのリストに対して全て同じ初期値を設定し、新しいCounterオブジェクトを生成するためのメソッドです。辞書のdict.fromkeys関数に似ていますが、Counterオブジェクトとして扱われる点が特徴です。

Counter.fromkeys関数の基本構文

from collections import Counter

# 構文
Counter.fromkeys(iterable, value)

引数の説明

  • iterable: キーとなる要素のリストやタプル
  • value: 各キーに設定される初期値 (デフォルトはNone)

戻り値

  • 初期化されたCounterオブジェクト

Counter.fromkeys関数の使用例

基本的な使い方の例を紹介します。

from collections import Counter

keys = ['a', 'b', 'c']
counter = Counter.fromkeys(keys, 0)

print(counter)

出力:

Counter({'a': 0, 'b': 0, 'c': 0})

Counter.fromkeys関数の応用例

初期値を1に設定し、後からカウントを追加する方法を紹介します。

from collections import Counter

keys = ['apple', 'banana', 'cherry']
counter = Counter.fromkeys(keys, 1)

# カウントを追加
counter['apple'] += 2
counter['banana'] += 3

print(counter)

出力:

Counter({'banana': 4, 'apple': 3, 'cherry': 1})

まとめ

Counter.fromkeys関数は、特定のキーに対して同じ初期値を割り当てる際に便利なメソッドです。データの初期化や頻度カウントの初期設定など、さまざまな場面で役立ちます。Python 3.11でも引き続き利用できる機能なので、ぜひ活用してみてください。