如何比较标准的Python 9元组时间格式?

2024-06-08 18:29:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试编写一个简单的新闻提要聚合器。在

我使用的是http://code.google.com/p/feedparser/,我得到了标准的python9元组时间格式,如(2004,1,1,19,48,21,3,1,0)每个post,http://packages.python.org/feedparser/date-parsing.html

如何比较这个时间格式?在

如果我想知道feed中的一篇文章是不是新的,比较时间是唯一的方法吗?在

非常感谢!在


Tags: orgcomhttp标准datepackages格式google
3条回答

时间元组可以直接与d1 < d2或{}进行比较。字段按字典顺序进行比较(即第一个字段比较,如果第一个字段相等,则比较下一个字段,等等)。在

如果要限制比较详细信息,请使用切片来切掉不需要的字段:

d1[:3] == d2[:3]       # compare just the year/month/day fields

像这样?在

>>> date1 = (2004, 1, 1, 19, 48, 21, 3, 1, 0)
>>> date2 = (2012, 1, 1, 19, 48, 21, 3, 1, 0)
>>> date1[0] == date2[0]
False
>>> date1[0] == 2004
True

比较时间可能是最好的方法,除非你想保留你看过的每一篇文章来过滤完整的提要。在

实际比较9个元组非常容易:Python的默认元组顺序按项比较元素:

>>> (2004, 1, 1, 19, 48, 21, 3, 1, 0) > (2004, 1, 1, 19, 48, 10, 3, 1, 0)
True
>>> (2004, 1, 1, 19, 48, 21, 3, 1, 0) > (2005, 1, 1, 19, 48, 21, 3, 1, 0)
False

这正是你所需要的。在

相关问题 更多 >