我有一個列表的列表(不能爲元組,因爲我必須動態地生成它),它被構造爲一個int和一個浮動的名單,像這樣的列表:對列表進行排序的方法?
[[1,1.0345],[2,5.098],[3,4.89],[2,5.97]]
我想得到它的排序,但我只設法得到內置的排序功能,以列表的第一個元素排序或不做任何事情,但我需要按列表中的第二個元素排序,我不想實現我自己的排序功能。所以我想要的一個例子是:
[[1,1.0345],[3,4.89],[2,5.098],[2,5.97]]
有人能告訴我如何獲得一個內置的排序功能來做到這一點?
這工作謝謝。 – user381261 2011-03-05 02:26:12
我不認爲自從我們進行了「排序」後我就使用了'sort'。但'operator.itemgetter'要比編寫你自己的lambda好。 – oylenshpeegul 2011-03-05 02:40:23
@oylenshpeegul:我真的很好奇。爲什麼operator.itemgetter優越?我的直覺是寫lambda。它更短,更通用,並且不需要導入我很少使用的模塊。我承認,itemgetter似乎快了30%左右,但這不太可能成爲實際代碼中的瓶頸。 – DSM 2011-03-05 03:12:30