2017-06-07 93 views
0

我有列表的列表,当我使用sort()时,它是根据第一个元素对列表进行排序。我应该怎么做才能对python中的其他元素进行排序。 Snapshot of code列表排序的Python列表,但相对于特定元素

sheetmarks=[] 
for _ in range(int(input())): 
sheetmarks.append([input(),float(input())]) 
sheetmarks.sort() 
print(sheetmarks) 

输出:::: [[ 'Akriti',41.0],[ '贝里',37.21],[ '哈利',37.21],[ '苛刻',39.0],['蒂娜',37.2]]

但我想根据数字而不是按名称对列表进行排序。我是编程和python的新手。需要一些建议。

+0

可能的复制(https://stackoverflow.com/questions/3216398/sorting-by-arbitrary-lambda) – voidpro

+0

我现在明白了,先生。谢谢。 –

回答

0
output.sort(lambda element: element[1]) 

将按第二个元素排序。 [排序按任意λ1的

>>> output 
[['Tina', 37.2], ['Berry', 37.21], ['Harry', 37.21], ['Harsh', 39.0], ['Akriti', 41.0]] 
相关问题