在Python中查找列表中任何项目的最连续序列

时间:2017-07-14 10:11:04

标签: python arrays list python-3.x

如何在Python中找到列表中任何项目(整数)的最连续序列?

my_list = [1, 3, 2, 2, 4, 5, 5, 5, 5, 6, 1, 5, 5]

我想从列表中提取[5, 5, 5, 5]

N.B。如果我写错了,请纠正我。 :-)

1 个答案:

答案 0 :(得分:6)

使用itertools.groupby()max()

In [1]: my_list = [1, 3, 2, 2, 4, 5, 5, 5, 5, 6, 1, 5, 5]

In [2]: from itertools import groupby

In [4]: max([list(g) for _, g in groupby(my_list)], key=len)
Out[4]: [5, 5, 5, 5]