我有一个真与假的清单,每当我有3个重复的真时,我都要数一数
my_list=[True, True, True, True,False, True, True,False]
输出:
由于前3个元素为真,第二到第四个元素也为真,因此输出为2
count=2
我做了以下操作,但是如果我愿意,我正在寻找一种更好的方法来改变3
count=0
for j in my_list:
if my_list[j]==True and my_list[j+1]==True and my_list[j+2]==True:
count=count+1
Tags:
可以将列表切片与
all
结合使用这也可以用
sum
(如Mark Ransom注释)写在一行中您可以使用^{} ,对于每个组,获取长度并减去2以添加到
count
从索引0到len(my_list)-2,您只需要一个for循环,然后对于每个迭代,从当前索引开始查找3个连续元素的总和(在python中为True=1和False=0)
对于任何n:
相关问题 更多 >
编程相关推荐