2 回答
TA贡献1807条经验 获得超9个赞
sorted_dict = {}
for key, value in sorted(original_dict.items(), key=lambda x:x[1][0], reverse=True):
sorted_dict[key] = value
其中x[1][0]代表字典值的第一项,我相信这是您想要对字典进行排序的内容。反向参数是可选的,如果未提供,则默认为 False。
TA贡献1804条经验 获得超7个赞
基于Python:对列表字典进行排序,您首先需要将时间戳从字符串转换为时间对象,然后比较它们。
datetime.datetime.strptime()
可以做的工作:将字符串按特定格式转换为Time 对象。例如:
In [13]: a = datetime.datetime.strptime('2019-02-04 15:29:10', '%Y-%m-%d %H:%M:%S')
In [14]: b = datetime.datetime.strptime('2019-02-04 15:30:10', '%Y-%m-%d %H:%M:%S')
In [15]: b > a
Out[15]: True
然后你可以用它作为你的键对你的字典进行排序,从我提到的答案中找到解决方案。只需作为函数执行dict()即可将结果转换为字典:
In [17]: dict(sorted(sorted_dict.items(), key=lambda x: datetime.datetime.strptime(x[1][0], '%Y-%m-%d %H:%M:%S')))
Out[17]:
{'Name B': ['2019-01-04 12:21:10',、
'First Line of info',
'Second line of info',
'Third line of info'],
'Name A': ['2019-02-04 15:29:10',
'First Line of info',
'Second line of info',
'Third line of info']}
In [18]:
添加回答
举报