def _daysplitinterval(starttime, endtime):
"""
Splits an interval into a list of dates, start times and end times
Parameters
----------
starttime : datetime
Start date/time of interval
endtime : datetime
End date/time of interval
Returns
-------
intervals : list
A list of lists. Each item in the sublists consists of the date,
start time, and end time for the particular date.
"""
assert starttime < endtime, 'Start datetime must be before end datetime'
out = []
starttime_orig = starttime
while starttime.date() <= endtime.date():
if starttime.date() == starttime_orig.date():
stime = starttime.time()
else:
stime = time.min
if starttime.date() == endtime.date():
etime = endtime.time()
else:
etime = time.max
out.append([starttime.date(), stime, etime])
starttime += timedelta(days=1)
return out
评论列表
文章目录