首页 > 解决方案 > 按日期时间路径组件对 url 列表进行排序

问题描述

我有一个包含多个日期时间组件的 url 列表。

urls = [ www.google.com/2018-10-26/2018-10-26T11:07:10.000Z, www.google.com//2018-10-26/2018-10-26T11:09:18.000Z]

我想对其进行排序,然后像这样返回列表:

urls = [ www.google.com/2018-10-26/2018-10-26T11:09:18.000Z, www.google.com//2018-10-26/2018-10-26T11:07:10.000Z]

因为第一个元素有 2018-10-26T11:09:18.000Z 它大于 2018-10-26T11:07:10.000Z。有没有办法在列表理解中做到这一点?我假设这是正确的道路:

for url in urls:
   date = url.split('/')[2]

但不知道从那里做什么。

标签: pythonlistsortingdatetime

解决方案


您可以通过以下方式根据时间戳(即斜杠之后的最后一个元素)以相反的顺序(最近的第一个)对您的 url 进行排序:

urls.sort(key=lambda url: url.split('/')[-1], reverse=True)

推荐阅读