如何使用python四舍五入日期时间

时间:2019-10-04 17:51:34

标签: python datetime

我想让python中的最后10分钟可以被10整除。

它不应舍入到下一个10分钟,而必须始终是前10分钟。

例如,输出应如下:

  

2019-10-04 20:45:34.903000-> 2019-10-04 20:40

     

2019-10-04 20:48:35.403000-> 2019-10-04 20:40

     

2019-10-04 20:42:21.903000-> 2019-10-04 20:40

     

2019-10-04 20:50:21.204000-> 2019-10-04 20:50

     

2019-10-04 20:59:49.602100-> 2019-10-04 20:50

import datetime

def timeround10(dt):
    #...


print timeround10(datetime.datetime.now())

2 个答案:

答案 0 :(得分:3)

最简单的方法是使用所需的值构造一个新的datetime

def timeround10(dt):
    return datetime.datetime(dt.year, dt.month, dt.day, dt.hour, (dt.minute // 10) * 10))

答案 1 :(得分:0)

def timeround10(dt):
    return dt.replace(second=dt.second // 10, microsecond=0)