2013-08-09 13 views

Antwort

15
>>> li = [["user1", 100], ["user2", 234], ["user3", 131]] 
>>> 
>>> import operator 
>>> 
>>> sorted(li, key=operator.itemgetter(1)) # Ascending order 
[['user1', 100], ['user3', 131], ['user2', 234]] 

>>> sorted(li, key=operator.itemgetter(1), reverse=True) # Reverse Sort 
[['user2', 234], ['user3', 131], ['user1', 100]] 
6

sorted akzeptieren optional key Funktion und umgekehrt Parameter.

>>> sorted([["user1", 100], ["user2", 234], ["user3", 131]], key=lambda x: x[1], reverse=True) 
[['user2', 234], ['user3', 131], ['user1', 100]] 
5
l = [["user1", 100], ["user2", 234], ["user3", 131]] 
l.sort(lambda x, y: x[1]) 
8

Sie können benutzerdefinierte das Sortierverhalten durch einen Schlüssel übergeben und umgekehrt. sorted wird eine neue Liste zurückgeben. Wenn die In-Place-Sortierung gewünscht wird, verwenden Sie list.sort.

>>> a = [["user1", 100], ["user2", 234], ["user3", 131]] 
>>> sorted(a, key=lambda x: x[1], reverse=True) 
[['user2', 234], ['user3', 131], ['user1', 100]] 
Verwandte Themen