在Python中查找当前时间间隔?

5
如何在Python中找到最近的15(或10)分钟间隔?例如:
>>> datetime.datetime.now()
datetime.datetime(2011, 2, 22, 15, 43, 18, 424873)

我希望能够获取当前的15分钟间隔(15:30-15:44),因此我需要将上述日期时间转换为

datetime.datetime(2011, 2, 22, 15, 30, 00, 00)
4个回答

5

对我来说,最简单的方法是:

from datetime import datetime, timedelta
now = datetime.now()
now = now - timedelta(minutes = now.minute % 15, seconds = now.second, microseconds = now.microsecond )

希望这能有所帮助。

2

我认为在这种情况下,使用replacetimedelta更直接:

>>> import datetime
>>> now = datetime.datetime.now()
>>> now.replace(minute=(now.minute - (now.minute % 15)), second=0, microsecond=0)
datetime.datetime(2012, 3, 23, 11, 15)
>>> 

也需要将“分钟”和“秒”替换为零。 - cfi
@cfl:你是指秒和微秒。谢谢,我已经编辑了示例。 - Jeff Bauer


0

只需设置分钟即可

min = min - min %  15 

并将较短的时间单位(秒、毫秒等)设置为0


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接