【问题标题】:Find current time interval in python?在python中查找当前时间间隔?
【发布时间】:2011-07-02 01:29:14
【问题描述】:

如何在 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)

【问题讨论】:

    标签: python time date-arithmetic


    【解决方案1】:
    【解决方案2】:

    对我来说最简单的方法:

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

    希望这会有所帮助。

    【讨论】:

      【解决方案3】:

      只需设置分钟

      min = min - min %  15 
      

      并在 0 上设置更短的时间单位(秒、毫秒、..)

      【讨论】:

        【解决方案4】:

        我认为对于这种情况,使用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)
        >>> 
        

        【讨论】:

        • 也需要将分秒替换为零
        • @cfl:你的意思是秒和微秒。谢谢,我已经编辑了示例。
        猜你喜欢
        • 1970-01-01
        • 2019-11-08
        • 2019-03-14
        • 1970-01-01
        • 2021-05-03
        • 2018-01-25
        • 1970-01-01
        • 1970-01-01
        • 2015-03-06
        相关资源
        最近更新 更多