python把二位列表变为一维列表的方法

c = [[1,2,3], [4,5,6], [7,8,9]]
1.用列表推导式
>>> [n for a in c for n in a ]
[1, 2, 3, 4, 5, 6, 7, 8, 9]

2.用嵌套循环展开
>>> result=[]
>>> for a in c:
	for n in a:
		result.append(n)
		result    #result的位置没有和第一个for对齐,所以结果不理想

		
[1]
[1, 2]
[1, 2, 3]
[1, 2, 3, 4]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 4, 5, 6, 7, 8]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
3.用sum对列表的求和

>>> sum(c,[])
[1, 2, 3, 4, 5, 6, 7, 8, 9]

4.导入相关的包
>>>from itertools import chain
>>>list(chain(*vec))
[1,2, 3, 4, 5, 6, 7, 8, 9]
>>>from itertools import chain
>>>list(chain(*vec))
[1,2, 3, 4, 5, 6, 7, 8, 9]


你可能感兴趣的:(python)