擅长:python、mysql、java
<p>从索引0到len(my_list)-2,您只需要一个for循环,然后对于每个迭代,从当前索引开始查找3个连续元素的总和(在python中为True=1和False=0)</p>
<pre><code>In [1]: my_list=[True, True, True, True,False, True, True,False]
In [2]: count = sum(1 for i in range(len(my_list)-2) if sum(my_list[i:i+3]) == 3)
In [3]: count
Out[3]: 2
</code></pre>
<p>对于任何n:</p>
<pre><code>def f(lst: list, n: int):
return sum(1 for i in range(len(lst)-n+1) if sum(lst[i:i+n])==n)
</code></pre>