python分段读取数据_python-根据时间戳将txt文件数据分段为24小时

我有以下格式的txt文件:

Event A 15MAR18 103000 15MAR18 103758

Event A 16MAR18 120518 16MAR18 121308

Event B 16MAR18 121203 16MAR18 124543

Event B 16MAR18 134443 16MAR18 141823

Event B 16MAR18 151733 16MAR18 155103

Event B 17MAR18 165013 17MAR18 172343

Event B 17MAR18 182253 17MAR18 185623

Event B 17MAR18 195533 17MAR18 202903

Event A 17MAR18 203738 17MAR18 204028

Event B 18MAR18 212813 18MAR18 220143

Event A 18MAR18 221058 18MAR18 222338

Event B 18MAR18 230103 18MAR18 233423

Event A 19MAR18 234728 19MAR18 000048

Event B 20MAR18 003343 20MAR18 010703

Event A 20MAR18 012508 20MAR18 013418

Event B 21MAR18 020623 21MAR18 023943

Event B 21MAR18 033903 21MAR18 041223

Event B 21MAR18 051143 21MAR18 054503

Event B 21MAR18 064433 21MAR18 071743

Event A 22MAR18 074058 22MAR18 075008

Event B 22MAR18 081713 22MAR18 085023

Event A 23MAR18 091438 23MAR18 092738

Event B 23MAR18 094953 23MAR18 102303

Event A 23MAR18 105148 23MAR18 110418

我正在尝试根据中间列的24小时timedelta分隔文件.

例如,带有15MAR18 103000的第一行将是它自己的单独列表

然后,第二行将是一个不同的列表,因为timedelta为> 24小时.它将从16MAR18 120518到16MAR18 151733进行分组.

我的尝试如下:

List_Segment_1 = []

with open('file.txt', 'r') as input_file:

input_file = input_file.readlines()

startTime = datetime.strptime(input_file[0][15:29], '%d%b%y %H%M%S')

endTime = startTime + timedelta(hours=24)

for line in input_file:

dates= datetime.strptime(line[15:29], '%d%b%y %H%M%S')

if startTime < dates < endTime:

List_Segment_1.append(line)

我不知道接下来的几行该怎么做…只有第一个“段” …实际的txt文件中有几百行….也许有更好的方法来分割数据什么东西的字典?

帮助表示赞赏.理想情况下,没有熊猫或任何扩展库

输出应如下所示:

Event A 15MAR18 103000 15MAR18 103758 Segment1

Event A 16MAR18 120518 16MAR18 121308 Segment2

Event B 16MAR18 121203 16MAR18 124543 Segment2

Event B 16MAR18 134443 16MAR18 141823 Segment2

Event B 16MAR18 151733 16MAR18 155103 Segment2

Event B 17MAR18 165013 17MAR18 172343 Segment3

Event B 17MAR18 182253 17MAR18 185623 Segment3

Event B 17MAR18 195533 17MAR18 202903 Segment3

Event A 17MAR18 203738 17MAR18 204028 Segment3

Event B 18MAR18 212813 18MAR18 220143 Segment4

Event A 18MAR18 221058 18MAR18 222338 Segment4

Event B 18MAR18 230103 18MAR18 233423 Segment4

Event A 19MAR18 234728 19MAR18 000048 Segment5

Event B 20MAR18 003343 20MAR18 010703 Segment5

Event A 20MAR18 012508 20MAR18 013418 Segment5

Event B 21MAR18 020623 21MAR18 023943 Segment6

Event B 21MAR18 033903 21MAR18 041223 Segment6

Event B 21MAR18 051143 21MAR18 054503 Segment6

Event B 21MAR18 064433 21MAR18 071743 Segment6

Event A 22MAR18 074058 22MAR18 075008 Segment6

Event B 22MAR18 081713 22MAR18 085023 Segment7

Event A 23MAR18 091438 23MAR18 092738 Segment8

Event B 23MAR18 094953 23MAR18 102303 Segment8

Event A 23MAR18 105148 23MAR18 110418 Segment8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值