Trotz der Durchsicht der Beispiele in der Python-Dokumentation bleibt die Klärung der Feinheiten der defaultdict-Methode schwer zu fassen. Lassen Sie uns diese Beispiele weiter untersuchen und den Zweck von int- und Listenparametern entschlüsseln.
Im ersten Beispiel:
from collections import defaultdict s = 'mississippi' d = defaultdict(int) for k in s: d[k] += 1
Das defaultdict erstellt eine Zuordnung, bei der jedes Zeichen in der Zeichenfolge s einem zugeordnet wird ganze Zahl. Der int-Parameter gibt an, dass, wenn ein neues Zeichen in der Zeichenfolge gefunden wird, der Standardwert 0 ist. Dies ist in der Ausgabe zu sehen:
d.items() # dict_items([('m', 1), ('i', 4), ('s', 4), ('p', 2)])
Im zweiten Beispiel:
s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)] d = defaultdict(list) for k, v in s: d[k].append(v)
Das Standarddikt erstellt eine Zuordnung, bei der jeder Schlüssel (der eine Farbe ist) einer Liste zugeordnet wird. Der Listenparameter gibt an, dass beim Auftreffen einer neuen Farbe der Standardwert eine leere Liste annimmt. Dies ist in der Ausgabe zu sehen:
d.items() # [('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])]
Daher geben die Parameter int und list in defaultdict den Typ des Standardobjekts an, das erstellt wird, wenn auf einen neuen Schlüssel zugegriffen wird. Im ersten Beispiel werden neue Zeichen in der Zeichenfolge auf 0 abgebildet, und im zweiten Beispiel werden neue Farben leeren Listen zugeordnet.
Das obige ist der detaillierte Inhalt vonDefaultdict vs. reguläres Wörterbuch: Wann und warum werden die Parameter „int' und „list' verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!