2015-11-24 72 views
1
mydict = [{'Counted number': '26', 'Timestamp': '8/10/2015 13:07:38'},{'Counted number': '14','Timestamp': '8/10/2015 11:51:14'},{'Counted number': '28','Timestamp': '8/10/2015 13:06:27'}, {'Counted number': '20','Timestamp': '8/10/2015 12:53:42'}] 

如何根據時間戳排序這個字典?python詞典中的排序時間戳

回答

1
mydict.sort(key=lambda x:x['Timestamp']) 

這會比較mydict根據自己的時間標記的元素和排序這種方式。現在,如果您想按實際時間對其進行排序,則必須將該時間戳字符串轉換爲某種類型的Time對象,然後根據該對象對mydict進行排序。 This question可能會對此有所幫助。

+0

這把時間戳作爲字符串和排序上。如果第一項是'08/10/2015 13:07:38'而不是'8/10/2015 13:07:38',這種方法會導致錯誤的結果。 – agamagarwal

+1

@agamagarwal:是的,我知道。你沒看過我的第二句話嗎? –

+0

@El它運作良好 –

2

這應該工作

import time 
mydict.sort(key=lambda x:time.mktime(time.strptime(x['Timestamp'], '%d/%m/%Y %H:%M:%S')))