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=0foriins:ifi==-1:nn.append(j)j+=1else:j+=1continueprint(nn)#根据前面计算出的索引,看看索引位置前的数值是否为-1jj=[]foriinnn:j=1print(i)print(i+j)ifs[i]==-1ands[i+j]==-1:jj.append(i+j)print(jj)
1 回答
不负相思意
TA贡献1777条经验 获得超10个赞
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))
添加回答
举报
0/150
提交
取消