Heim >Backend-Entwicklung >Python-Tutorial >Defaultdict vs. reguläres Wörterbuch: Wann sollten Sie ein „Defaultdict' verwenden?

Defaultdict vs. reguläres Wörterbuch: Wann sollten Sie ein „Defaultdict' verwenden?

Susan Sarandon
Susan SarandonOriginal
2024-12-03 18:30:12617Durchsuche

Defaultdict vs. Regular Dictionary: When Should You Use a `defaultdict`?

Defaultdict vs. reguläres Wörterbuch: Den Unterschied verstehen

Pythons integrierte Wörterbücher sind grundlegende Datenstrukturen, die Schlüssel-Wert-Paare speichern. Der Typ defaultdict bietet jedoch eine einzigartige Funktion, die ihn von regulären Wörterbüchern unterscheidet.

Schlüsselunterschied: Unterdrückung von KeyError-Ausnahmen

Beim Zugriff auf einen nicht vorhandenen Schlüssel in a Wenn Sie ein reguläres Wörterbuch verwenden, wird eine KeyError-Ausnahme auftreten. Im Gegensatz dazu bieten Defaultdicts eine Möglichkeit, solche Szenarien elegant zu handhaben, indem automatisch ein Standardeintrag für den fehlenden Schlüssel erstellt wird.

Standardelemente erstellen

Zur Steuerung der Standardart Für das erstellte Element geben Sie ein „aufrufbares“ Objekt als Argument für den Defaultdict-Konstruktor an. Zum Beispiel die beiden Beispiele aus der Python-Dokumentation:

  • Im ersten Beispiel wird das defaultdict-Objekt mit int als aufrufbarem Objekt initialisiert, sodass ganzzahlige Objekte (0) als Standardelemente generiert werden.
  • Im zweiten Beispiel verwendet das defaultdict-Objekt list als aufrufbares Objekt, was zu leeren Listen als Standard führt

Beispiele für die Erstellung von Standardelementen:

Berücksichtigen Sie die folgenden Codeausschnitte:

import collections

# Create a defaultdict with initial values set to 0
s = 'mississippi'
d = collections.defaultdict(int)
for char in s:
    d[char] += 1
print(d)  # Output: {'m': 1, 'i': 4, 's': 4, 'p': 2}

# Create a defaultdict with initial values as empty lists
colors = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
d = collections.defaultdict(list)
for color, count in colors:
    d[color].append(count)
print(d)  # Output: {'blue': [2, 4], 'red': [1], 'yellow': [1, 3]}

Verstehen Sie den Unterschied zwischen Defaultdicts und regulären Wörterbüchern können Sie die Fähigkeit des defaultdict nutzen, um fehlende Schlüssel in Ihren Python-Anwendungen effektiv zu verarbeiten.

Das obige ist der detaillierte Inhalt vonDefaultdict vs. reguläres Wörterbuch: Wann sollten Sie ein „Defaultdict' verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn