Python -将动态嵌套列表的项合并到单个列表中



我有一个代码,它接受用户的输入并创建一个嵌套列表。

List = [list 1, list2, list 3,.....]

列表1、列表2、列表3等是动态的,可以不断增加或减少。

到目前为止我的代码输出是:
All_data = [[a,b],[c,d],[1,2],[3,4],.....]

我想要的输出(对于动态嵌套列表):

All_data = [a,b,c,d,1,2,3,4,......]
谁能给我一个解决这个问题的办法?

您可以使用itertools.chain:

itertools.chain(*All_data)

或:

itertools.chain.from_iterable(All_data)

如果你想要得到一个列表,这将创建一个迭代器:

list(itertools.chain.from_iterable(All_data))

您可以使用numpy.concatenate()。它将把嵌套的列表压缩成一个列表。

如果你的嵌套列表是动态的,并且可以呈指数增长,那么我建议使用itertools库中的itertools.chain.from_iterable()。它会更快,因为它不会像第一个选项那样将列表转换为numpy数组。

最新更新