[Python-de] sorting by keys

joerg krebs krebsj at cip.ifi.lmu.de
Fre Aug 18 16:46:50 CEST 2006


Am Freitag, den 18.08.2006, 16:12 +0200 schrieb joerg krebs:
> Hallo Leute,
> vielleicht kann mir jemand von euch helfen.
> 
> Ich verwende die Methode:
> 
> L = [('c', 2), ('d', 1), ('a', 4), ('b', 3)]
> sorted(L, key=operator.itemgetter(1))
> [('d', 1), ('c', 2), ('b', 3), ('a', 4)]
> 
> um eine Liste(L) zu sortieren.
> 
> Hat jemand eine Idee, wie man mehrstellige Zahlen sortieren als keys
> sortieren kann ??
> 
> Also z.B.
> L = [('c', 2), ('d', 10), ('a', 4), ('b', 3)
> 
> nach obiger:
> [('d', 10), ('c', 2), ('b', 3), ('a', 4)]
> 
> ich haette aber gerne
> [('c', 2), ('b', 3), ('a', 4),('d', 10)]
> 
> 
> Vielen Dank schon mal 
> 
> mfg
> 	Joerg


Hmm....
ich glaube ich habe die Antwort auf mein Frage selber gefunden:
L.sort(lambda a, b: a[1]-b[1])

funktioniert zumindest fuer mehrelementige Listen von Listen, also z.B.
L = [['c', 2], ['d', 10], ['a', 4], ['b', 3]]
L.sort(lambda a, b: a[1]-b[1])
[['c', 2], ['b', 3], ['a', 4],['d', 10]]


Mfg
	Joerg

> 
> 
> 
> 
> _______________________________________________
> python-de maillist  -  python-de at python.net
> http://python.net/mailman/listinfo/python-de




More information about the python-de mailing list