当前位置:  开发笔记 > 编程语言 > 正文

Python日期比较

如何解决《Python日期比较》经验,为你挑选了3个好方法。

我想知道特定的python日期时间对象是否早于X小时或分钟.我正在尝试做类似的事情:

if (datetime.now() - self.timestamp) > 100
# Where 100 is either seconds or minutes

这会生成类型错误.

在python中进行日期时间比较的正确方法是什么?我已经看过WorkingWithTime,它很接近但不完全是我想要的.我假设我只想要以秒为单位表示的datetime对象,以便我可以进行正常的int比较.

请发布日期时间最佳做法列表.



1> John Milliki..:

使用datetime.timedelta课程:

>>> from datetime import datetime, timedelta
>>> then = datetime.now() - timedelta(hours = 2)
>>> now = datetime.now()
>>> (now - then) > timedelta(days = 1)
False
>>> (now - then) > timedelta(hours = 1)
True

你的例子可以写成:

if (datetime.now() - self.timestamp) > timedelta(seconds = 100)

要么

if (datetime.now() - self.timestamp) > timedelta(minutes = 100)



2> William..:

将差异与您创建的timedelta进行比较:

if datetime.datetime.now() - timestamp > datetime.timedelta(seconds = 5):
    print 'older'



3> 小智..:

替代方案:

if (datetime.now() - self.timestamp).total_seconds() > 100:

假设self.timestamp是一个日期时间实例

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有