ホームページ >バックエンド開発 >Python チュートリアル >Python 辞書: `collections.defaultdict` をいつ使用する必要がありますか?

Python 辞書: `collections.defaultdict` をいつ使用する必要がありますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-02 04:39:10121ブラウズ

Python Dictionaries: When Should You Use `collections.defaultdict`?

区別の詳細: Collections.defaultdict と通常の辞書

Python では、デフォルトの辞書 (collections.defaultdict) は辞書とは異なります。通常の辞書を重要な意味で使用します。標準の dict は存在​​しないキーにアクセスすると KeyError を発生させますが、defaultdict は指定された関数を呼び出すことで欠落している項目を自動的に作成します。

例を理解する

見てみましょう提供された例を調べてください:

d = defaultdict(int)

ここで、int() はデフォルトの関数です。不足しているキーを整数値 (デフォルトは 0) で初期化します。

for k in s:
    d[k] += 1

このループは、文字列 s 内の各文字 (k) を反復処理し、defaultdict に格納されている対応するカウントをインクリメントします。

d.items()
dict_items([('m', 1), ('i', 4), ('s', 4), ('p', 2)])

その結果、文字の出現頻度を含む辞書が得られます。

2 番目では例:

d = defaultdict(list)

list() はデフォルトの関数で、欠落しているキーのデフォルトとして空のリストを作成します。

for k, v in s:
    d[k].append(v)

このループは、リストのキーと値をペアにして追加します。

d.items()
[('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])]

結果は、キーが色、値が対応する値のリストである辞書になります。元のリストから。

以上がPython 辞書: `collections.defaultdict` をいつ使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。