我试图从给定的时间表中获取可用时间:
167.0 01:50:48 02:09:56
167.0 03:48:08 04:07:16
167.0 05:45:25 06:04:32
167.0 07:42:39 08:01:45
167.0 08:49:05 22:16:43
167.0 23:17:18 23:59:59
168.0 03:11:24 03:32:05
168.0 00:00:00 03:32:05
168.0 05:08:25 05:29:16
168.0 07:05:04 07:26:02
168.0 09:00:53 23:09:45
169.0 01:47:09 02:07:32
169.0 00:00:00 02:07:32
169.0 03:43:50 04:04:09
169.0 05:40:42 06:00:59
169.0 07:37:44 07:48:00
169.0 09:34:55 23:59:59
170.0 00:00:00 01:32:00
170.0 10:37:37 23:59:59
171.0 02:36:01 02:45:24
171.0 00:00:00 02:45:24
171.0 04:33:10 04:92:34
171.0 06:30:21 06:89:47
171.0 08:27:34 08:47:02
171.0 10:24:49 23:59:59
172.0 03:59:50 04:19:21
172.0 00:00:00 04:19:21
172.0 05:57:01 06:16:33
172.0 07:54:14 08:13:48
172.0 09:51:29 10:11:04
172.0 11:48:44 23:59:59
如果第一列是一年中的某一天,则中间列是开始时间,右列是结束时间。
有没有办法将其反转,以便在一年中的某一天显示00:00:00到23:59:59之间的可用时间?
答案 0 :(得分:0)
好吧,想想一个简单的日历应用程序。您可以屏蔽无效的时间,并且您的日历会显示 有效的那些时间。谢天谢地,你正在使用军事时间,这使问题变得不那么复杂了。
最终,你会留下一系列时间。
这里大概是我如何做到这一点,给出了清单。
首先,在每一行使用string.split()
。这将为您提供一个列表,每个条目都已分段。
从00:00:00开始,一直读到你遇到的第一个时段,假设它们是有序的。
在列表中添加该条目,从00:00:00到该窗口的开头。
从第一个时间块结束,读到下一个时间块的开头。那是另一个间隔。
冲洗并重复,直到你有一个从00:00:00到23:59:59的所有时间的列表,不有一个与他们相关的间隔。
这有帮助吗?