Moin,
ich möchte ein dict in Python nach seinen Values sortieren, geht so etwas? Die Values sind Objekte eines komplexen, selbst definierten Datentyps, für die ich eine compare-Methode implementiert habe. Listen von Objekten dieses komplexen Datentypes kann ich also schon sortieren. Ich habe die Elemente jedoch in einem Dictionary und möchte sie auch darin behalten. Jetzt habe ich folgendes probiert (im Beispiel mit ints statt Objekten des selbstdefinierten Datentyps):
from operator import itemgetter dict1 = {'a': 1, 'b': 4, 'c': 35, 'z': 2} dict2 = sorted(dict1.items(), key = itemgetter(1))
Zwar ist dict2 dann sortiert, aber leider nicht mehr vom Typ dictionary, sondern nur noch eine Liste. Deshalb habe ich es dann wieder zu dict getypecastet:
dict3 = dict(dict2)
Dict3 ist dann zwar wieder ein dictionary, aber wieder nach den keys sortiert. Gibt es überhaupt eine Möglichkeit, ein Dictionary nicht nach seinen Keys sondern nach seinen Values zu sortieren? Danke!