剥离datetime python中的秒数

时间:2010-07-06 05:30:01

标签: python

now()给了我

datetime.datetime(2010, 7, 6, 5, 27, 23, 662390)

我如何得到datetime.datetime(2010, 7, 6, 5, 27, 0, 0)(日期时间对象),其中所有分钟后的所有内容都为零?

4 个答案:

答案 0 :(得分:90)

dtwithoutseconds = dt.replace(second=0, microsecond=0)

http://docs.python.org/library/datetime.html#datetime.datetime.replace

答案 1 :(得分:13)

您可以使用datetime.replace获取没有秒和微秒的新日期时间对象:

the_time = datetime.now()
the_time = the_time.replace(second=0, microsecond=0)

答案 2 :(得分:13)

我知道这是一个很老的问题,但到目前为止我还没有找到任何真正完整的答案。

无需先创建日期时间对象,然后再对其进行操作。

  

dt = datetime.now()。replace(second = 0,microsecond = 0)

将返回所需的对象

答案 3 :(得分:0)

有人说 Python 可能很快就会增加纳秒,如果是这样,其他答案中提到的 replace(microsecond=0) 方法可能会中断。

因此,我正在这样做

datetime.fromisoformat( datetime.now().isoformat(timespec='minutes') )

也许通过字符串表示有点愚蠢和昂贵,但它让我安心。