我比较新的蟒蛇
我有两个datetime对象.我需要计算它们之间的timedelta,然后以spcific格式显示输出.
Alpha_TimeObj = datetime.datetime(int(AlphaTime.strftime('%Y')), int(AlphaTime.strftime('%m')), int(AlphaTime.strftime('%d')), int(AlphaTime.strftime('%H')), int(AlphaTime.strftime('%M')), int(AlphaTime.strftime('%S')))
Beta_TimeObj = datetime.datetime(int(BetaTime.strftime('%Y')), int(BetaTime.strftime('%m')), int(BetaTime.strftime('%d')), int(BetaTime.strftime('%H')), int(BetaTime.strftime('%M')), int(BetaTime.strftime('%S')))
Turnaround_TimeObj = Beta_TimeObj - Alpha_TimeObj
这个Turnaround_TimeObj时间增量的一个例子是“2天,22:13:45”.
我想格式化输出,但不能这样做.
print Turnaround_TimeObj.strftime('%H hrs %M mins %S secs')
不起作用
我知道这样做的一种方法是将其转换为秒,然后将divmodding转换为获得所需的格式.
像在
totalSeconds = Turnaround_TimeObj.seconds
hours, remainder = divmod(totalSeconds, 3600)
minutes, seconds = divmod(remainder, 60)
print '%s:%s:%s' % (hours, minutes, seconds)
但我想知道我是否可以使用任何日期时间函数(如strftime)在单行中执行此操作.
编辑:实际转换为秒也不起作用.
如果我将时间增量“1天,3:42:54”转换为秒使用
totalSeconds = Turnaround_TimeObj.seconds
totalSeconds值显示为13374而不是99774. ie.它忽略了“天”的价值.