Benutzerspezifische Werkzeuge
Sie sind hier: Startseite Programmierung Python Sortieren einer Liste mit Dictionarys
Tag Cloud
Inhalt in Zahlen
  • Seiten: 192
  • Ordner: 83
  • Links: 42
 

Sortieren einer Liste mit Dictionarys

abgelegt unter: ,
Wir haben eine Liste mit Dictionarys die wir nach einem Key sortieren wollen.

Hier unsere Liste für dieses Beispiel:

unsorted_list = [
{'vorname':'Klaus', nachname':'Meier',  'alter':57},
{'vorname':'Lars,   nachname':'Stieg',  'alter':23},
{'vorname':'Chris', nachname':'Berg',   'alter':55},
{'vorname':'Axel',  nachname':'Neue',   'alter':33},
{'vorname':'Max',   nachname':'Muster', 'alter':41},
]

1.Methode - Schritt für Schritt

Zum sortieren nutzen wir folgende Methode:

def sort_diclist(unsorted_list, sort_on):
li = [ (dic[sort_on], dic) for dic in unsorted_list ]
li.sort()
result = [ dict for (key, dict) in li ]
return result

Jetzt können wir unsere Dictionary-Liste nach dem Nachnamen sortieren:

sorted_list = sort_diclist(unsorted_list, 'nachname')

So erhalten wir unsere Liste zurück, die jetzt nach dem Nachnamen sortiert ist!

2. Methode - Lamda/Sorted

sorted_list = sorted(unsorted_list, key=lambda entrie: entrie['nachname'])

 

Kommentieren

Sie können einen Kommentar abgeben, indem Sie das untenstehende Formular ausfüllen. Nur Text.

Frage: Wieviel ist acht + eins (Bitte eine Zahl als Ziffer schreiben)?
Ergebnis: