Python merge all child list into parent list and remove duplicates

后端 未结 3 498
执笔经年
执笔经年 2021-01-16 23:10

I have a huge list of lists. I want to Merge all child lists to parent list and remove duplicates item from parent list after merge.

What is the optimized wa

相关标签:
3条回答
  • 2021-01-16 23:21

    first you can convert the list of list into a one list and than apply set to that list.

    x = [['a', 'b', 'c', 2, 4], ['x', 1, 2, 3, 'z'], ['z', 'b', 'y', 'a' 'x']]
    new_ls=[]
    for ls in x:
        new_ls.extend(ls)
    print(list(set(new_ls))
    

    output:

    [1, 2, 3, 4, 'ax', 'b', 'y', 'x', 'c', 'z', 'a']
    
    0 讨论(0)
  • 2021-01-16 23:29

    Use set and chain:

    x = [['a', 'b', 'c', 2, 4], ['x', 1, 2, 3, 'z'], ['z', 'b', 'y', 'a' 'x']]
    
    from itertools import chain
    
    result = list(set(chain.from_iterable(x)))
    print(result)
    
    0 讨论(0)
  • 2021-01-16 23:34

    Use set

    x = [['a', 'b', 'c', 2, 4], ['x', 1, 2, 3, 'z'], ['z', 'b', 'y', 'a' 'x']]
    >>> list(set([item for sublist in x for item in sublist]))
    [1, 2, 3, 4, 'z', 'ax', 'a', 'b', 'c', 'x', 'y']
    
    0 讨论(0)
提交回复
热议问题