2016-01-21 54 views
2

我有這個清單data,需要訂購點擊如何對一個條目中包含多個數據的列表進行排序?

data = [] 
    data.append({"url":"google.com", "Hits":5, "Size":7}) 
    data.append({"url":"microsoft.com", "Hits":30, "Size":0}) 
    data.append({"url":"abc.com", "Hits":20, "Size":3}) 

我試圖用data.sort()sorted(data),但他們沒有工作。

+0

你應該添加** **怎麼你想真正排序... \ –

+0

@JoranBeasley OK,儘快,我會編輯,以顯示我得到了我所使用的代碼和錯誤回報。謝謝 – rafaelstck

回答

1

可以使用key=參數.sort()sorted()

data.sort(key=lambda d: d["Hits"]) 
1

作爲替代lambda函數,你也可以傳遞一個itemgetter對象爲重點,以sorted因爲itemgetter實例是調用。

>>> from operator import itemgetter 
>>> sorted(data, key=itemgetter('Hits')) 
[{'url': 'google.com', 'Hits': 5, 'Size': 7}, {'url': 'abc.com', 'Hits': 20, 'Size': 3}, {'url': 'microsoft.com', 'Hits': 30, 'Size': 0}] 
相關問題