我有两个日期时间字符串,我希望互相减去,并希望返回答案 使用 Python 2.7 的HH:MM:SS
格式。例如,我有"2019-01-22 10:46:34"
和"2019-01-22 10:30:34"
,并希望它返回类似这样的内容00:16:00
.我尝试将时间转换为整数,但似乎无法转换回来。我也尝试了日期时间模块。下面是一个我尝试过的东西的基本示例,我希望将其转换为函数。
from datetime import datetime
a = "2019-01-22 10:46:34"
b = "2019-01-22 10:30:25"
c = a-b
print(datetime.time(c, '%Y-%m-%d %H:%M:%S')
我已经在这个问题上工作了几天,所以任何帮助将不胜感激。
看看 timedelta 对象。
有了它,您可以在秒内获得两个datetime
对象的差异,然后您可以计算分钟小时等。
例如,您有两个datetime
对象a
和b
,c
将是timedelta
对象:
import datetime
# datetime object (year, month, day, hour, minute, second)
a = datetime.datetime.strptime("2019-01-22 10:46:34", "%Y-%m-%d %H:%M:%S")
b = datetime.datetime.strptime("2019-01-22 10:30:25", "%Y-%m-%d %H:%M:%S")
# returns timedelta object
c = a-b
print('Difference: ', c)
# return (minutes, seconds)
minutes = divmod(c.seconds, 60)
print('Difference in minutes: ', minutes[0], 'minutes',
minutes[1], 'seconds')
编辑:divmod()
用于以分钟和秒为单位获得击球结果,但您也可以只写
minutes = c.seconds / 60
print('Difference in minutes: ', minutes)
输出:Difference in minutes: 16 minutes 9 seconds