查找Python中列表中任何项目的最连续序列
问题描述:
如何在Python中找到列表中任何项目(整数)的最连续序列?查找Python中列表中任何项目的最连续序列
my_list = [1, 3, 2, 2, 4, 5, 5, 5, 5, 6, 1, 5, 5]
我想从列表中提取[5, 5, 5, 5]
。
N.B.请纠正我,如果我写了任何错误。 :-)
答
使用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]
+0
谢谢兄弟,真棒解决方案......--) – JunaidHira
'my_list [5:9]'N.B.请:这是一个笑话。 – Rahul
@ np.array如果你不知道索引怎么办?如果你需要像动态一样做?注:你有一个伟大的大脑! – JunaidHira
@CarlesMitjans,JunaidHira:你甚至不知道笑话是什么意思? – Rahul