回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个python列表,其中包含二进制信息,可以是1序列,也可以是0序列,例如:</p>
<pre><code>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]
</code></pre>
<p>如何存储起始1和结束1的索引值?你知道吗</p>
<p>例如:</p>
<p>如果<code>event = [0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]</code>那么<code>result = [2,5,8,11]</code></p>
<p><strong>EDIT2</strong>我意识到理想情况下结果应该是result\u start=[2,8]result\u end=[5,11],就像lazyr解一样,这样我们就知道了一个1的位置。例如,event=[0,0,1,1,0,1],将为最后一个1生成一个错误的列表。谢谢大家的努力!你知道吗</p>
<p><strong>编辑1:</strong>我需要第一个和最后一个1的索引,但是从第一个到最后一个1。你知道吗</p>
<p>我试着像下面这样编码:</p>
<pre><code>k=False
j=0
result=[]
for i in event:
if i==1:
k=True
result.append(k)
else:
k=False
</code></pre>