如何在python中加入列表列表?
有多种方法可以展平列表列表。简单的方法是运行两个嵌套循环–外循环一次给出一个列表子列表,而内循环一次给出一个子列表元素。每个元素都附加到平面列表对象。
L1=[[1,2],[3,4,5],[6,7,8,9]] flat=[] for i in L1: for j in i: flat.append(j) print (flat)
另一种方法是使用生成器函数产生迭代器并将其转换为列表
def flatten(list): for i in list: for j in i: yield j L1=[[1,2,3],[4,5],[6,7,8,9]] flat=flatten(L1) print (list(flat))
最紧凑的方法是使用chain()
itertools模块中的方法
L1=[[1,2,3],[4,5],[6,7,8,9]] import itertools flat=itertools.chain.from_iterable(L1) print (list(flat))
上面的所有代码产生一个扁平的列表
[1, 2, 3, 4, 5, 6, 7, 8, 9]