的Python:日期时间,防止时间演变为日,小时格式时,上述24小时
问题描述:
比方说,我有两次的Python:日期时间,防止时间演变为日,小时格式时,上述24小时
import datetime
x = '23:55:00'
y = '01:07:00'
当他们加在一起使用:
x = datetime.datetime.strptime(x, '%H:%M:%S')
y = datetime.datetime.strptime(y, '%H:%M:%S')
x = datetime.timedelta(hours=x.hour ,minutes=x.minute, seconds=x.second)
y = datetime.timedelta(hours=y.hour, minutes=y.minute, seconds=y.second)
z = x + y
结果:
z = '1 day, 01:02:00'
有没有一种方法,使结果:
z = '25:02:00'
答
要获取timedelta对象的总小时数,可以调用timedelta对象上的total_seconds()
方法,然后使用整数除法以小时数(3600)中的秒数除。
hours = z.total_seconds() // 3600
+0
这适用于我正在尝试的操作 – toshbar
虽然这不是一个有效的时间格式吗? –
所以你想要两个日期时间对象之间的小时数,分钟数和秒数? – Henry
如果可能的话,我想花几个小时来翻身。我可以使用正则表达式和一些字符串操作来转换最终结果,但我想知道是否有一个简单的方法 – toshbar