您可以先使用enumerate
zip压缩带有索引的项目,
然后itertools.groupby(list,operator.itemgetter(1))
按项目分组
仅0
使用过滤list(y) for (x,y) in list if x == 0
,
最后max(list, key=len)
得到最长的序列。
import itertools,operator
r = max((list(y) for (x,y) in itertools.groupby((enumerate(A)),operator.itemgetter(1)) if x == 0), key=len)
print(r[0][0]) # prints 12
print(r[-1][0]) # prints 19