在Python 3.4中按日期对字典列表进行排序[重复]

Posted

技术标签:

【中文标题】在Python 3.4中按日期对字典列表进行排序[重复]【英文标题】:Sort list of dictionaries by date in Python 3.4 [duplicate] 【发布时间】:2016-05-13 22:36:27 【问题描述】:

我有一个这样的字典列表,但还有更多字典:

x = ["duration":datetime.time(5,30),"date":datetime.date(2016,02,13),"duration":datetime.time(3,30),"date":datetime.date(2016,02,11),"duration":datetime.time(2,0),"date":datetime.date(2016,02,16)]

有没有办法使用 Python 关键字(例如 sortedlambda)按 date 的升序对该列表进行排序,而无需自定义排序功能?我一直在研究sorted docs 和lambda 在可选key 参数中的使用。

【问题讨论】:

这是一个列表,不是数组。 @AdamSmith 哎呀,我来编辑一下 @AdamSmith 我不知道我怎么找不到重复的-_- 别担心!这是一个写得很好,回答得很好的问题。将其指向规范问题只会创建更多搜索词,人们可以通过谷歌搜索最终得到正确答案 【参考方案1】:

在发布问题时,我想出了答案,所以我想我应该分享。

x = sorted(x, key = lambda k: k["date"])

【讨论】:

也可以接受x.sort(key=operator.itemgetter("date")) 如果你的列表叫做 x 那么你应该把它改成 x = sorted(x, key = lambda k: k["date"]) @Hyperion 已更新,它确实增加了清晰度。

以上是关于在Python 3.4中按日期对字典列表进行排序[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中按名称和日期作为键对字典进行排序? [复制]

如何在飞镖/颤振中按日期对列表进行排序/排序?

在Python中按值对嵌套字典进行排序,并按另一个值对余数进行排序

python对列表中的字典进行排序

在 Python 中按日期对 CSV 进行排序

如何在VB中按某个组件对对象列表进行排序?