python在两次之间找到一半时间

python在两次之间找到一半时间,python,Python,我想在python中找到两次之间的一半时间。比如说我有两次 start_time = '08:30:00' end_time = '16:30:00' 如果我想显示前半部分,它应该打印为'08:30:00'和'12:30:00' 如果我想显示后半部分,它应该打印为'12:30:00'和'16:30:00' 任何建议都会有帮助。使用python: from datetime import datetime a = '08:30:00' b = '16:30:00' FMT = '%H:%M:%S

我想在python中找到两次之间的一半时间。比如说我有两次

start_time = '08:30:00'
end_time = '16:30:00'
如果我想显示前半部分,它应该打印为
'08:30:00'和'12:30:00'
如果我想显示后半部分,它应该打印为
'12:30:00'和'16:30:00'

任何建议都会有帮助。

使用python:

from datetime import datetime
a = '08:30:00'
b = '16:30:00'
FMT = '%H:%M:%S'
delta = datetime.strptime(b, FMT) - datetime.strptime(a, FMT)
half = datetime.strptime(a, FMT) + delta/2
print a + ' - ' + str(datetime.time(half))
print str(datetime.time(half)) + ' - ' + b

使用
datetime
class。检查它的用法。。
from datetime import timedelta, datetime

start_time = '08:30:00'
end_time = '16:30:00'
time_format = '%H:%M:%S'

# Convert to the datetime object
start = datetime.strptime(start_time, time_format)
end = datetime.strptime(end_time, time_format)

# Find half of delta between start and end
half_seconds = (end - start).total_seconds() / 2
half = start + timedelta(seconds=half_seconds)

print(half.strftime(time_format))
print(end.strftime(time_format))