In Python sind Wörterbücher eine wesentliche Datenstruktur für die Zuordnung von Schlüsseln zu Werten. Allerdings unterstützen Wörterbücher von Natur aus keine doppelten Schlüssel, was bei der Arbeit mit bestimmten Datentypen ein Problem sein kann.
Problem:
Angenommen, Sie haben eine Textdatei mit Duplizieren Sie Autokennzeichen mit unterschiedlichen Werten, wie unten gezeigt:
EDF768, Bill Meyer, 2456, Vet_Parking TY5678, Jane Miller, 8987, AgHort_Parking GEF123, Jill Black, 3456, Creche_Parking ABC234, Fred Greenside, 2345, AgHort_Parking ... EDF768, Jenny Meyer, 9987, Vet_Parking TY5678, Jo King, 8987, AgHort_Parking
Sie möchten ein Wörterbuch erstellen, in dem die Kennzeichen Schlüssel und die Daten in jeder Zeile der Wert sind. Bei Verwendung der Standardwörterbuchsyntax wird jedoch der alte Wert mit dem neuen überschrieben, wenn doppelte Schlüssel gefunden werden.
Lösung:
Um doppelte Schlüssel zu handhaben, ist eine gängige Lösung besteht darin, ein Standarddikt aus dem Sammlungsmodul zu verwenden:
from collections import defaultdict data_dict = defaultdict(list)
Anstatt dem doppelten Schlüssel einen einzelnen Wert zuzuweisen, hängen Sie den neuen Wert an a an Liste, die diesem Schlüssel zugeordnet ist:
data_dict[regNumber].append(details)
Dadurch wird ein Wörterbuch erstellt, in dem jeder Schlüssel einer Liste von Werten entspricht. Zum Beispiel:
data_dict = { 'EDF768': [ ('Bill Meyer', '2456', 'Vet_Parking'), ('Jenny Meyer', '9987', 'Vet_Parking'), ], 'TY5678': [ ('Jane Miller', '8987', 'AgHort_Parking'), ('Jo King', '8987', 'AgHort_Parking'), ], ... }
Auf diese Weise können Sie auf alle mit einer bestimmten Registrierungsnummer verbundenen Daten zugreifen, indem Sie auf die entsprechende Liste im Wörterbuch zugreifen.
Das obige ist der detaillierte Inhalt vonWie gehe ich beim Erstellen eines Python-Wörterbuchs mit doppelten Schlüsseln um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!