如何在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]