Python ドキュメントの例を確認したにもかかわらず、defaultdict メソッドの微妙な点を明確にすることは依然として困難です。これらの例をさらに詳しく調べて、int パラメーターと list パラメーターの目的を解読してみましょう。
最初の例では、
from collections import defaultdict s = 'mississippi' d = defaultdict(int) for k in s: d[k] += 1
defaultdict は、文字列 s 内の各文字がマッピングにマップされるマッピングを作成します。整数。 int パラメータは、文字列内で新しい文字が見つかったときに、その文字がとるデフォルト値が 0 であることを示します。これは出力に示されています:
d.items() # dict_items([('m', 1), ('i', 4), ('s', 4), ('p', 2)])
2 番目の例:
s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)] d = defaultdict(list) for k, v in s: d[k].append(v)
defaultdict は、各キー (色) がリストにマッピングされるマッピングを作成します。 list パラメータは、新しい色が見つかったときのデフォルト値が空のリストであることを示します。これは出力に示されています:
d.items() # [('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])]
したがって、defaultdict の int パラメーターと list パラメーターは、新しいキーがアクセスされたときに作成されるデフォルト オブジェクトのタイプを指定します。最初の例では、文字列内の新しい文字は 0 にマップされ、2 番目の例では、新しい色は空のリストにマップされます。
以上がDefaultdict と通常の辞書: `int` パラメーターと `list` パラメーターを使用する場合とその理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。