儘管查看了 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)])
在第二個範例中:
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,在第二個範例中,新顏色會對應到空列表。
以上是Defaultdict 與常規字典:何時以及為何使用 `int` 和 `list` 參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!