我有一个时段列 (str),其中一天中的每个小时都有 1 或 0,具体取决于我们是否选择在该小时内运行广告活动。
例子:
daypart = '110011100111111100011110'
我想将其转换为以下字符串格式:
'0-1, 4-6, 9-15, 19-22'
上述格式更具可读性,并显示了活动运行的时间。
这就是我正在做的:
hours_list = []
ind = 0
for x in daypart:
if int(x) == 1:
hours_list.append(ind)
else:
hours_list.append('exclude')
ind += 1
上面给了我一个这样的列表:
[0, 1, 'exclude', 'exclude', 4, 5, 6, 'exclude', 'exclude', 9, 10, 11, 12, 13, 14, 15, 'exclude', 'exclude', 'exclude', 19, 20, 21, 22, 'exclude']
现在我想找到一种方法将上述内容变成我想要的输出。我想做的是找到“排除”之间存在哪些元素,然后开始将它们添加到新列表中。然后,我可以从每个列表中取出最小和最大的元素,用“-”将它们连接起来,然后将所有此类列表附加在一起。
我有什么想法可以做到这一点,或者有更简单的方法来完成这一切吗?
qq_笑_17
婷婷同学_
明月笑刀无情
相关分类