Heim > Backend-Entwicklung > Python-Tutorial > Wie kann man ein Wörterbuch mit Listenwerten umkehren?

Wie kann man ein Wörterbuch mit Listenwerten umkehren?

Susan Sarandon
Freigeben: 2024-10-29 18:55:02
Original
1056 Leute haben es durchsucht

How to Reverse a Dictionary with List Values?

Umkehren eines Wörterbuchs mit Listenwerten

Beim Umkehren eines Wörterbuchs wird ein neues Wörterbuch erstellt, in dem die Schlüssel und Werte des ursprünglichen Wörterbuchs ausgetauscht werden. Wenn das Originalwörterbuch Listenwerte enthält, stellt es eine Herausforderung dar, da Python keine Hash-Listen erstellen kann.

Verwendung von Tupeln für Tupelschlüssel

Ein Ansatz zur Behebung dieses Problems ist: Konvertieren Sie die Listenwerte in Tupel. Tupel sind unveränderlich und können gehasht werden, sodass sie als Schlüssel in einem Wörterbuch dienen können.

Beachten Sie den folgenden Code:

<code class="python">inverted_index = {}
for key, values in index.items():
    for value in values:
        tuple_key = (key, value)
        inverted_index.setdefault(tuple_key, []).append(key)</code>
Nach dem Login kopieren

Dieser Code erstellt einen neuen Schlüssel für jede eindeutige Kombination der Originalschlüssel und -wert. Das inverted_index-Wörterbuch wird dann mit den umgekehrten Schlüssel-Wert-Paaren gefüllt.

Verwenden von Sets für eindeutige Werte

Alternativ können Sie Sets verwenden, um doppelte Werte im invertierten Index zu verarbeiten Wörterbuch. Sets sind ungeordnete Sammlungen eindeutiger Elemente.

<code class="python">inverted_index = {}
for key, values in index.items():
    unique_values = set(values)
    for value in unique_values:
        inverted_index.setdefault(value, set()).add(key)</code>
Nach dem Login kopieren

Dieser Code erstellt einen Satz eindeutiger Werte für jeden Originalschlüssel. Das inverted_index-Wörterbuch wird dann mit den umgekehrten Schlüssel-Wert-Paaren gefüllt, wobei die Werte Sätze eindeutiger Originalschlüssel sind.

Das obige ist der detaillierte Inhalt vonWie kann man ein Wörterbuch mit Listenwerten umkehren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage