How can I find same values in a list and group together a new list?

后端 未结 6 1637
感情败类
感情败类 2020-12-03 07:11

From this list:

N = [1,2,2,3,3,3,4,4,4,4,5,5,5,5,5]

I\'m trying to create:

L = [[1],[2,2],[3,3,3],[4,4,4,4],[5,5,5,5,5]]
         


        
6条回答
  •  遥遥无期
    2020-12-03 08:07

    Use itertools.groupby:

    from itertools import groupby
    
    N = [1,2,2,3,3,3,4,4,4,4,5,5,5,5,5]
    
    print([list(j) for i, j in groupby(N)])
    

    Output:

    [[1], [2, 2], [3, 3, 3], [4, 4, 4, 4], [5, 5, 5, 5, 5]]
    

    Side note: Prevent from using global variable when you don't need to.

提交回复
热议问题