我有一个带有二进制信息的 python 列表,该列表具有 1 序列或 0 序列,例如:
event = [0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1]
如何存储开始 1 和结束 1 的索引值?
例如:
如果event = [0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]
那么result = [2,5,8,11]
EDIT2我意识到理想情况下结果应该是 result_start=[2,8] result_end=[5,11],就像lazr 解决方案一样,这样我们就可以了解只有一个 1 所在的位置。例如。event=[0,0,1,1,0,1],会为最后一个 1 生成错误的列表。感谢您尝试所有!
EDIT1:我需要第一个和最后一个 1 的索引,但从第一个到最后一个 1。
我尝试将其编码如下:
k=False
j=0
result=[]
for i in event:
if i==1:
k=True
result.append(k)
else:
k=False