Python Django 时间字段减法运算

3

我有两个时间,start_timeend_time

对于start_time,我得到了6:30,对于end_time,我得到了7:30。 现在我想要计算它们之间的时间差。这些时间是从HTML文本字段中获取的。

我应该如何计算这两个时间字段之间的时间差呢?

提前感谢。


尝试先将它们转换为“时间对象”。 - Barun Sharma
https://dev59.com/2mAh5IYBdhLWcg3wBPXY - Barun Sharma
end_time - start_time? - Sayse
就像我说的那样,我是从HTML文本字段中获取它的,所以end_time - start_time行不通。 - varad
那么你不是有两个“时间”,而是两个字符串(听起来是这样)。先解析它们。你尝试过/研究过什么? - Sayse
2个回答

6
>>> import datetime
>>> time1 = datetime.datetime.strptime("6:30",'%H:%M')
>>> time2 = datetime.datetime.strptime("7:30",'%H:%M')
>>> difference = time2-time1
>>> difference
datetime.timedelta(0, 3600)
>>> difference.seconds
3600
>>> "{:0>8}".format(datetime.timedelta(seconds=difference.seconds))
'01:00:00'
>>> "{:0>8}".format(datetime.timedelta(seconds=666777))
'7 days, 17:12:57'

0
>>> from datetime import datetime
>>> s1 = "06:30"
>>> s2 = "07:30"
>>> timeformat = "%I:%M"
>>> delta = datetime.strptime(s2, timeformat) - datetime.strptime(s1, timeformat)
>>> delta
datetime.timedelta(0, 3600)
>>> delta.seconds
3600

delta 是时间差。您可以检查该值并进行相应的转换。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接