gpt4 book ai didi

python - 如何在 python 列表中找到连续项目组?

转载 作者:行者123 更新时间:2023-11-28 19:52:24 25 4
gpt4 key购买 nike

我有一个这样的排序列表 [1,2,3,4,6,7,8,9,10,12,14]

我查找了不同的类似解决方案,但它们对我的情况没有帮助

我希望这个列表像这样输出[ [1,4], [6,10], [12], [14] ]
所以基本上是一个列表的列表,有一个序列的开始和结束。老实说看起来很容易,但我现在有点卡在上面了。任何帮助将不胜感激!

最佳答案

您可以使用 more_itertools.consecutive_groups为此,请访问 https://pypi.org/project/more-itertools/

from more_itertools import consecutive_groups

#Get the groupings of consecutive items
li = [list(item) for item in consecutive_groups([1,2,3,4,6,7,8,9,10,12,14])]
#[[1, 2, 3, 4], [6, 7, 8, 9, 10], [12], [14]]

#Use the result to get range groupings
result = [ [item[0],item[-1]] if len(item) > 1 else [item[0]] for item in li]

print(result)
#[[1, 4], [6, 10], [12], [14]]

关于python - 如何在 python 列表中找到连续项目组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55892109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com