„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie eliminiere ich doppelte Wörterbücher in einer Python-Liste?

Wie eliminiere ich doppelte Wörterbücher in einer Python-Liste?

Veröffentlicht am 08.11.2024
Durchsuche:977

How to Eliminate Duplicate Dictionaries in a Python List?

Duplikate aus einer Liste von Wörterbüchern entfernen

Duplikate in einer Datensammlung können ein Hindernis für eine effiziente Datenverarbeitung sein. In der Python-Programmierung werden häufig Listen von Wörterbüchern zum Speichern tabellarischer Daten verwendet. Es kann jedoch vorkommen, dass Sie doppelte Wörterbücher aus einer solchen Liste entfernen müssen.

Betrachten Sie die folgende Liste von Wörterbüchern:

[
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]

Das Ziel besteht darin, eine Liste nur mit eindeutigen Wörterbüchern zu erhalten, ohne Duplikate. Um dies zu erreichen, können wir einen einfachen Ansatz verwenden:

Erstellen eines temporären Wörterbuchs mit der ID als Schlüssel

  1. Erstellen eines temporären Wörterbuchs mithilfe eines Listenverständnisses, wobei Der Schlüssel für jedes Wörterbuch ist sein „id“-Feld.
  2. Dieser Schritt ordnet im Wesentlichen jeden eindeutigen „id“-Wert einem bestimmten Wörterbuch zu.

Eindeutige Wörterbücher aus Werten extrahieren

  1. Erhalten Sie die Werte des temporären Wörterbuchs mit der Methode „values()“.
  2. Das Ergebnis ist eine Liste eindeutiger Wörterbücher, wobei Duplikate entfernt wurden.

Python-Implementierung

So implementieren Sie diesen Ansatz in Python:

def remove_duplicates_from_dicts(dict_list):
    dict_id_mapping = {v['id']: v for v in dict_list}
    return list(dict_id_mapping.values())

sample_list = [
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]
print(remove_duplicates_from_dicts(sample_list))

Dieser Code erzeugt die folgende Ausgabe:

[{'id': 1, 'name': 'john', 'age': 34}, {'id': 2, 'name': 'hanna', 'age': 30}]

Mit dieser Strategie können Sie doppelte Wörterbücher effektiv aus einer Liste entfernen und eine neue Liste mit nur eindeutigen Wörtern erhalten Elemente.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3