Я хочу отсортировать следующие данные по дате и времени.Сортировка списка значений словаря по дате и времени в python
{'TID': 'B1', 'sno': '2', 'datetime': '04-13-12 17:21:18:83'}
{'TID': 'A1', 'sno': '4', 'datetime': '11-17-12 22:50:59:30'}
{'TID': 'A2', 'sno': '3', 'datetime': '11-17-12 22:51:00:66'}
{'TID': 'B6', 'sno': '2', 'datetime': '10-28-12 07:26:02:19'}
{'TID': 'B0', 'sno': '8', 'datetime': '02-26-16 08:13:01:30'}
{'TID': 'B4', 'sno': '8', 'datetime': '02-26-16 08:13:02:43'}
{'TID': 'C1', 'sno': '9', 'datetime': '03-08-15 17:12:55:81'}
{'TID': 'A2', 'sno': '23', 'datetime': '03-08-15 17:31:31:12'}
Предлагаемое решение here и here не работает для меня.
Hee мой код:
mylist=[]
with open(path+outfile) as fid:
for line in fid:
mylist.append(eval(line))
from operator import itemgetter
newlist = sorted(mylist, key=itemgetter('datetime'))
for item in newlist:
print(str(item))
здесь выход кода выше:
{'sno': '8', 'TID': 'B0', 'datetime': '02-26-16 08:13:01:30'}
{'sno': '8', 'TID': 'B4', 'datetime': '02-26-16 08:13:02:43'}
{'sno': '9', 'TID': 'C1', 'datetime': '03-08-15 17:12:55:81'}
{'sno': '23', 'TID': 'A2', 'datetime': '03-08-15 17:31:31:12'}
{'sno': '2', 'TID': 'B1', 'datetime': '04-13-12 17:21:18:83'}
{'sno': '2', 'TID': 'B6', 'datetime': '10-28-12 07:26:02:19'}
{'sno': '4', 'TID': 'A1', 'datetime': '11-17-12 22:50:59:30'}
{'sno': '3', 'TID': 'A2', 'datetime': '11-17-12 22:51:00:66'}
Если вы заметили, выше вывод не сортируется по дате и времени.
что является '83' в этих обозначениях' 04-13-12 17: 21: 18: 83'? – RomanPerekhrest
Если ваши значения 'datetime' были выполнены правильно, это другое решение будет работать. –
Я не вижу, как это не сортируется. Он сортируется в алфавитном порядке. Проблема в том, что у вас есть месяцы, поэтому сначала нужно проанализировать дату. –