我需要使用datetime
,但我找不到如何从datetime.time
对象中减去或添加分钟或秒数
我尝试过使用datetime.timedelta,但它不起作用。
这是我尝试过的
t1=datetime.time(15,45,20)
t2=t1-datetime.timedelta(seconds=40)
我想获得t2=datetime.time(15,44,40)
答案 0 :(得分:1)
Timedelta适用于datetime对象。 你可以把你的时间花在一个日期时间上(或者从一个人开始,他们关心年份等等),然后提取一个时间对象。
>>>t1=datetime.datetime(2016, 3, 1, 15,45,20)
>>>t2=t1-datetime.timedelta(seconds=40)
>>>print t2.time()
15:44:40
>>>type(t2.time())
<type 'datetime.time'>
正如其中一条评论指出的那样,如果你不去想它,这会给你带来奇怪的结果。休息40秒,结束一段时间(但是在你忽略的日期数据的前一天)。但是你可以用最少的逻辑解决这个问题,以便捕捉到超过24:00:00或低于0:0:0的东西。