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

Wie kann ich ein Python-Wörterbuch mit Listenwerten umkehren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-31 05:55:01512Durchsuche

How Can I Invert a Python Dictionary with List Values?

Invertieren eines Wörterbuchs mit Listenwerten: Eine umfassende Lösung

Im Bereich der Python-Programmierung sind Wörterbücher unverzichtbare Strukturen zum Speichern von Daten mit Schlüssel-Wert-Paaren. Gelegentlich besteht die Notwendigkeit, ein Wörterbuch umzukehren, insbesondere wenn es sich bei den Werten um Listen handelt. Diese Aufgabe stellt aufgrund der Unhashbarkeit von Listen eine Herausforderung dar. Es gibt jedoch eine einfache Lösung, um dieses Hindernis zu überwinden.

Um die Inversion eines Wörterbuchs mit Listenwerten zu erreichen, kann man das folgende Snippet verwenden:

<code class="python">inverse = {}
for k,v in index.items():
    for x in v:
        inverse.setdefault(x, []).append(k)</code>

In diesem Ansatz wird das Die äußere Schleife durchläuft die Schlüssel und Werte des ursprünglichen Wörterbuchs. Für jeden Wert (der eine Liste ist) durchläuft die innere Schleife jedes Element dieser Liste. Für jedes angetroffene Element wird das Verhalten des inversen Wörterbuchs durch die folgende Logik bestimmt:

  • Wenn das Element (x) bereits als Schlüssel im inversen Wörterbuch vorhanden ist, wird der Schlüssel aus dem ursprünglichen Wörterbuch (k) verwendet. wird an die entsprechende Werteliste angehängt.
  • Wenn das Element noch nicht als Schlüssel existiert, wird ein neuer Schlüssel mit einer leeren Liste als Wert erstellt und der Schlüssel aus dem Originalwörterbuch an diesen neuen angehängt Liste.

Dieser Prozess invertiert effektiv das ursprüngliche Wörterbuch, wobei die Werte (ursprüngliche Schlüssel) zu Schlüsseln werden und die Schlüssel (ursprüngliche Werte) in Listen der Schlüssel umgewandelt werden, aus denen sie stammen. Das resultierende inverse Wörterbuch enthält das gewünschte Format.

Das obige ist der detaillierte Inhalt vonWie kann ich ein Python-Wörterbuch mit Listenwerten umkehren?. 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