我需要找到一个数字出现的最大连续次数。具体为1或0。澄清。
a = [1,0,0,0,1,1,1,1,0,1]
我想让python做的是计算1和0连续出现的次数。
因此,对于1,连续出现的最大值为4,对于0,最大连续值为3.
到目前为止我尝试了什么
from collections import Counter
import numpy
l = [1, 0, 0, 0, 0, 1, 1]
x = sum(1 for i in l if i % [1])
print
X
答案 0 :(得分:1)
您可以使用groupby
from itertools import groupby
max_of_1 = max([i for i in [[key,len(list(group))] for key, group in groupby(a)] if i[0]])[1]
max_of_0 = max([i for i in [[key,len(list(group))] for key, group in groupby(a)] if not i[0]])[1]
<强>结果强>
In [1]: max_of_1
Out[1]: 4
In [2]: max_of_0
Out[3]: 3