Seite 1 von 1

sorted()

Verfasst: Dienstag 26. April 2011, 14:11
von hypnoticum
Hallo,
Ich würde gerne eine nach 'x' sortierte Liste von der 'key's erhalten. wie mache ich das zB mit sorted()?

Code: Alles auswählen

param = {'key1':{'x':2, 'y':6},'key2':{'x':4, 'y':5},'key3':{'x':6, 'y':1}}

Re: sorted()

Verfasst: Dienstag 26. April 2011, 14:16
von BlackJack
Man kann eine Funktion übergeben, die zu jedem Element einen Sortierschlüssel zurück gibt:

Code: Alles auswählen

In [560]: sorted(param, key=lambda k: param[k]['y'])
Out[560]: ['key3', 'key2', 'key1']

In [561]: sorted(param, key=lambda k: param[k]['x'])
Out[561]: ['key1', 'key2', 'key3']

Re: sorted()

Verfasst: Dienstag 26. April 2011, 14:23
von hypnoticum
Vielen Dank. Ich hatte schon was rumprobiert dabei aber nicht verstanden was Element und was Sortierschlüssel ist.