


Entfernen doppelter Wörterbücher aus einer Liste in Python
Beim Umgang mit einer Liste von Wörterbüchern ist es oft notwendig, Duplikate zu entfernen, die den gleichen Schlüssel haben. Wertepaare. Dieser Artikel bietet eine robuste Lösung mit Python.
Problemstellung:
Anhand einer Liste von Wörterbüchern besteht das Ziel darin, die Wörterbücher zu entfernen, die denselben Schlüssel und Wert enthalten Paare.
Lösung:
Um dies zu erreichen, verwenden wir einen zweistufigen Ansatz Ansatz:
-
Wörterbücher in hashbare Tupel konvertieren:
Wir konvertieren jedes Wörterbuch in ein Tupel, in dem die Elemente die Schlüssel-Wert-Paare sind. Dieser Schritt ist von entscheidender Bedeutung, da Wörterbücher nicht hashbar sind, Tupel jedoch schon. -
Duplikate mit einem Satz entfernen:
Wir erstellen einen Satz aus der Liste der Tupel. Ein Satz entfernt automatisch Duplikate und hinterlässt nur eindeutige Tupel.
Um die Wörterbücher aus den eindeutigen Tupeln zu rekonstruieren, verwenden wir ein Wörterbuchverständnis. Hier ist der Codeausschnitt:
original_list = [{'a': 123}, {'b': 123}, {'a': 123}] # Convert dictionaries to tuples tuples = [tuple(d.items()) for d in original_list] # Remove duplicates using a set unique_tuples = set(tuples) # Reconstruct dictionaries result_list = [dict(t) for t in unique_tuples] print(result_list)
Ausgabe:
[{'a': 123}, {'b': 123}]
Bewahrung der Reihenfolge:
Bei Beibehaltung des Originals Da die Reihenfolge der Wörterbücher von entscheidender Bedeutung ist, können wir eine etwas andere verwenden Ansatz:
-
Erstellen Sie einen gesehenen Satz:
Initialisieren Sie einen Satz namens „gesehen“, um die eindeutigen Tupel zu verfolgen. -
Iterieren Sie über die Wörterbücher:
Durchlaufen Sie die ursprüngliche Liste und konvertieren Sie sie für jedes Wörterbuch in ein Tupel. Wenn das Tupel nicht in der angezeigten Menge enthalten ist, fügen Sie es hinzu und hängen Sie das Wörterbuch an die Ergebnisliste an.
Hier ist der Code:
original_list = [{'a': 123, 'b': 1234}, {'a': 3222, 'b': 1234}, {'a': 123, 'b': 1234}] seen = set() result_list = [] for d in original_list: t = tuple(d.items()) if t not in seen: seen.add(t) result_list.append(d) print(result_list)
Ausgabe:
[{'a': 123, 'b': 1234}, {'a': 3222, 'b': 1234}]
Das obige ist der detaillierte Inhalt vonWie kann man doppelte Wörterbücher effizient aus einer Python-Liste entfernen und gleichzeitig die Reihenfolge wahren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

PythonusesahybridmodelofCompilation und Interpretation: 1) thepythonInterPreterCompilessourceCodeIntoplatform-unintenpendentBytecode.2) Thepythonvirtualmachine (PVM) ThenexexexexecthisByTeCode, BalancingeAnsewusewithperformance.

Pythonisbothinterpreted und kompiliert.1) ItscompiledToByteCodeForPortabilityAcrossplatform.2) thytecodeTheninterpreted, und das ErlaubnisfordyNamictyPingandRapidDevelopment zulässt, obwohl es sich

ForloopsaridealWenyouKnowtHenumberofofiterationssinadvance, während whileloopsarebetterForsituationswhereyouneedtoloopuntilaconditionismet.forloopsaremoreffictionAndable, geeigneter Verfaserungsverlust, whereaswiloopsofofermorcontrolanduseusefulfulf

Forloopsareusedwhenthenumberofiterationsisknowninadvance,whilewhileloopsareusedwhentheiterationsdependonacondition.1)Forloopsareidealforiteratingoversequenceslikelistsorarrays.2)Whileloopsaresuitableforscenarioswheretheloopcontinuesuntilaspecificcond

Pythonisnotpurelyinterpretiert; itusesahybridapproachofByteCodecompilation undruntimeinterpretation.1) PythoncompilessourcecodeIntoBytecode, die ISthenexecutBythepythonvirtualmachine (Pvm)

ToconcatenatelistsinpythonWithThesameElements, Verwendung: 1) Die Operatortokeepduplikate, 2) asettoremoveduplicate, or3) listenConpRectionforControloverDuplikate, EvermethodhasDifferentPerformanceInDormplocate.

PythonisaninterpretedLuage, OfferingaseofuseandflexibilitätsbutfacingPerformancelimitationsincriticalApplications.1) InterpretedLanguages LikePythonexecutine-by-Line, ermöglicht, dassmediateFeedbackandrapidPrototyping.2) CompiledLanguagesslikec/C.5.

Useforloopswhenthenumberofofiterationssisknowninadvance und wileloopswhenCiterationsDependonacondition.1) Forloopsardealforsequencelistorranges.2) Während


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion
