将列表列表转换为单个列表

时间:2019-05-05 07:36:21

标签: python list

当前我有一个列表列表

l=[['asd'],['fgd']].

我想将其变成列表

goal_list=['asd','fgd']

但是我不知道如何将列表转换为其中的值-有人知道如何有效地实现此目的吗?

2 个答案:

答案 0 :(得分:0)

这是itertools.chain的完美用例,实际上,我们实际上chain将所有子列表一起放平它们!

from itertools import chain

def single_list(arr):
    return list(chain(*arr))

print(single_list([['asd'],['fgd']]))
print(single_list([['asd', 'abcd'],['fgd', 'def']]))

输出将为

['asd', 'fgd']
['asd', 'abcd', 'fgd', 'def']

答案 1 :(得分:-1)

只需使用具有两个循环的列表理解:

goal_list = [item for sublist in l for item in sublist]