计算列表中某个值连续重复的最多次数?

s=[-175,-842,-187,-66,-1,-1,-148,-17,-32,-35,35,-1,-1,-1,-278,278,-432,-92,-25,549,-666,-45,-547,-38,-7,-101,-28,-43,-31,-4,1510,-1958,-40,-25,-7,-1,-1,-1,-1,-15]
数据示例如上。想要把-1连续重复最多的次数算出来(例子中-1连续重复最多的是4次)。贴一下我的代码(错误的):
#这里把-1的索引计算出来
nn=[]
j=0
foriins:
ifi==-1:
nn.append(j)
j+=1
else:
j+=1
continue
print(nn)
#根据前面计算出的索引,看看索引位置前的数值是否为-1
jj=[]
foriinnn:
j=1
print(i)
print(i+j)
ifs[i]==-1ands[i+j]==-1:
jj.append(i+j)
print(jj)
青春有我
浏览 488回答 1
1回答

不负相思意

importitertoolss=[-175,-842,-187,-66,-1,-1,-148,-17,-32,-35,35,-1,-1,-1,-278,278,-432,-92,-25,549,-666,-45,-547,-38,-7,-101,-28,-43,-31,-4,1510,-1958,-40,-25,-7,-1,-1,-1,-1,-15]a=[len(list(v))fork,vinitertools.groupby(s)ifk==-1]print('-1连续出现的最大次数为:%d'%max(a))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript