<p>这是对您的问题的幼稚实现,您应该根据需要进行修改:</p>
<pre><code>from datetime import datetime, timedelta
with open('file.txt', 'r') as input_file:
lines = input_file.readlines()
base_time = datetime.strptime(lines[0][14:28], '%d%b%y %H%M%S')
end_time = base_time + timedelta(hours=24)
segment = 1
for line in lines:
date = datetime.strptime(line[14:28], '%d%b%y %H%M%S')
if base_time <= date < end_time:
pass
else:
segment += 1
base_time = date
end_time = date + timedelta(hours=24)
print(line.strip() + '\tSegment {}'.format(segment))
</code></pre>
<p>此代码段输出:</p>
<pre><code>Event A 15MAR18 103000 15MAR18 103758 Segment 1
Event A 16MAR18 120518 16MAR18 121308 Segment 2
Event B 16MAR18 121203 16MAR18 124543 Segment 2
Event B 16MAR18 134443 16MAR18 141823 Segment 2
Event B 16MAR18 151733 16MAR18 155103 Segment 2
Event B 17MAR18 165013 17MAR18 172343 Segment 3
Event B 17MAR18 182253 17MAR18 185623 Segment 3
Event B 17MAR18 195533 17MAR18 202903 Segment 3
Event A 17MAR18 203738 17MAR18 204028 Segment 3
Event B 18MAR18 212813 18MAR18 220143 Segment 4
Event A 18MAR18 221058 18MAR18 222338 Segment 4
Event B 18MAR18 230103 18MAR18 233423 Segment 4
Event A 19MAR18 234728 19MAR18 000048 Segment 5
Event B 20MAR18 003343 20MAR18 010703 Segment 5
Event A 20MAR18 012508 20MAR18 013418 Segment 5
Event B 21MAR18 020623 21MAR18 023943 Segment 6
Event B 21MAR18 033903 21MAR18 041223 Segment 6
Event B 21MAR18 051143 21MAR18 054503 Segment 6
Event B 21MAR18 064433 21MAR18 071743 Segment 6
Event A 22MAR18 074058 22MAR18 075008 Segment 7
Event B 22MAR18 081713 22MAR18 085023 Segment 7
Event A 23MAR18 091438 23MAR18 092738 Segment 8
Event B 23MAR18 094953 23MAR18 102303 Segment 8
Event A 23MAR18 105148 23MAR18 110418 Segment 8
</code></pre>