Tauschen Schlüssel-Wert-Paaren in ein dictionary

Ich bin auf der Suche nach Möglichkeiten, um swap-alle Schlüssel-Wert-Paare eines gegebenen Wörterbuchs.

So weit ich denken konnte, einen Weg, es zu tun:

Ex:

>>>a = { 0: 'a', 1 : 'b', 2 : 'c' }
>>> {value : key for key,value in a.items()}
{'a': 0, 'b': 1, 'c' : 2}

Aber für diese müsste ich mit extra Raum für die Erklärung einem anderen Wörterbuch.

Ich würde gerne wissen, welche Methoden könnte ich verwenden, tauschen Sie die Schlüssel-Wert-paar mehr Speicherplatz-Effizienz.

  • was ist, wenn zwei Werte wiederholen oder Sie haben einen Wert, der nicht hashable?
  • Gut, wenn zwei (oder mehr) Tasten den gleichen Wert haben, dann überschreiben wäre die einzige Möglichkeit. Ich, denke !
  • Ich hatte nicht gedacht, das unhashable Wert Szenario ! Jeder Vorschlag helfen würde
  • Gut, dass ist ziemlich wichtig, ich denke entweder ein Fehler ausgelöst werden soll, oder verwenden Sie eine defaultdict und erstellen Sie eine Liste der Werte für die Tasten wiederholt, aber dann müsste man gemischte Typen als Werte.
  • aber wieder, ich wäre mit Extraplatz
  • Ich denke, Daten zu verlieren, wäre etwas würde ich mehr sorgen machen
  • Was ist der eigentliche Grund, den Sie umkehren möchten Sie die Zuordnungen?
  • Ich war der Lösung eines Problems und ich denke, dass der Austausch der Schlüssel-Wert-paar wäre ein besserer Ansatz
  • nicht, wenn Sie Daten verlieren, es wird nicht sein, was war die ursprüngliche dict tun?

Schreibe einen Kommentar