2017-06-07 88 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]] 
相關問題