首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >遍历字典列表以查找最新的DateTime

遍历字典列表以查找最新的DateTime
EN

Stack Overflow用户
提问于 2022-04-15 07:58:58
回答 1查看 59关注 0票数 0

我有一个txt文件和一些包含字典的列表。这就是它的样子:

代码语言:javascript
复制
[]
[]
[{'userId': '61f6b0e2-XXXX-XXXX-XXXX-82440f1b316b', 'lastLogOnDateTime': '2022-04-11T08:11:30.077Z'}]
[{'userId': 'a159ace2-XXXX-XXXX-XXXX-221885ce1282', 'lastLogOnDateTime': '2022-03-01T15:31:42.661Z'}]
[{'userId': '5e2a0b81-XXXX-XXXX-XXXX-4e7ac8d1c0d1', 'lastLogOnDateTime': '2022-04-14T08:25:11.354Z'}]
[{'userId': '75bfd26a-XXXX-XXXX-XXXX-52238cf882ab', 'lastLogOnDateTime': '2022-04-14T10:22:16.466Z'}]
[{'userId': 'ecff3ce3-XXXX-XXXX-XXXX-21a9baa658de', 'lastLogOnDateTime': '2022-01-19T16:00:24.838Z'}]
[{'userId': '5983f74c-XXXX-XXXX-XXXX-6c565edd08cc', 'lastLogOnDateTime': '2022-03-21T12:56:45.099Z'}, {'userId': '865e5246-XXXX-XXXX-XXXX-ef19a8ae4ce7', 'lastLogOnDateTime': '2022-04-14T09:10:07.863Z'}]
[{'userId': '7b2d3af3-XXXX-XXXX-XXXX-8870c5f19287', 'lastLogOnDateTime': '2022-04-14T06:06:38.75Z'}]
[{'userId': 'ecff3ce3-XXXX-XXXX-XXXX-21a9baa658de', 'lastLogOnDateTime': '2022-03-15T12:45:39.116Z'}, {'userId': '6560f0cd-XXXX-XXXX-XXXX-ca0b743734bb', 'lastLogOnDateTime': '2022-04-07T05:04:38.345Z'}, {'userId': '5865d24c-XXXX-XXXX-XXXX-57286e4aeac9', 'lastLogOnDateTime': '2022-04-14T06:54:56.632Z'}]
[{'userId': 'e7b36f37-XXXX-XXXX-XXXX-f6a3b2bff570', 'lastLogOnDateTime': '2021-10-29T14:29:20.445Z'}, {'userId': '5983f74c-XXXX-XXXX-XXXX-6c565edd08cc', 'lastLogOnDateTime': '2021-11-23T12:25:31.788Z'}]
[{'userId': '79a60545-XXXX-XXXX-XXXX-23374487c8e5', 'lastLogOnDateTime': '2022-04-14T09:09:36.33Z'}]
[{'userId': '865e5246-XXXX-XXXX-XXXX-ef19a8ae4ce7', 'lastLogOnDateTime': '2022-03-22T07:36:12.719Z'}]
[{'userId': 'e7b36f37-XXXX-XXXX-XXXX-f6a3b2bff570', 'lastLogOnDateTime': '2021-10-27T08:05:54.091Z'}, {'userId': 'b3169036-XXXX-XXXX-XXXX-50f7c4806fa3', 'lastLogOnDateTime': '2021-11-05T11:01:39.796Z'}]
[{'userId': '5983f74c-XXXX-XXXX-XXXX-6c565edd08cc', 'lastLogOnDateTime': '2021-12-17T14:06:03.918Z'}]

因此,如您所见,一些列表是空的,而另一些则包含多个字典。我不知道的是如何遍历一个列表,然后用最新的DateTime检查字典中的字典。因此,每个列表应该只包含一个字典,这是具有最新DateTime的字典。

例如:

代码语言:javascript
复制
[{'userId': '5983f74c-XXXX-XXXX-XXXX-6c565edd08cc', 'lastLogOnDateTime': '2022-03-21T12:56:45.099Z'}, {'userId': '865e5246-XXXX-XXXX-XXXX-ef19a8ae4ce7', 'lastLogOnDateTime': '2022-04-14T09:10:07.863Z'}]

应成为:

代码语言:javascript
复制
[{'userId': '865e5246-XXXX-XXXX-XXXX-ef19a8ae4ce7', 'lastLogOnDateTime': '2022-04-14T09:10:07.863Z'}]

当然,空的可能仍然是空的。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-15 08:07:34

您可以根据lastLogOnDateTime字段按降序排序列表,只需获取列表的第一个字典即可。

代码语言:javascript
复制
res = []
s = sorted(list_of_dict, key=lambda d: d['lastLogOnDateTime'], reverse=True)
if len(s)>0:
    res = [s[0]]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71881486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档