python实现把二维列表变为一维列表的方法分析

yipeiwu_com6年前Python基础

本文实例讲述了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相关内容可查看本站专题:《Python列表(list)操作技巧总结》、《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python(PyS60)实现简单语音整点报时

本文实例为大家分享了python语音整点报时的具体代码,供大家参考,具体内容如下 主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。 import e...

python文件特定行插入和替换实例详解

python文件特定行插入和替换实例详解 python提供了read,write,但和很多语言类似似乎没有提供insert。当然真要提供的话,肯定是可以实现的,但可能引入insert会带...

Python程序暂停的正常处理方法

将进程挂起(Suspend) 而非 阻塞(Block) 如果用sleep() 进程将阻塞 假设进程下有两个线程 那么这两个线程会继续运行 要使进程挂起 可以考虑使用psutil im...

Pytorch保存模型用于测试和用于继续训练的区别详解

保存模型 保存模型仅仅是为了测试的时候,只需要 torch.save(model.state_dict, path) path 为保存的路径 但是有时候模型及数据太多,难以一次性训...

Python:合并两个numpy矩阵的实现

numpy是Python用来科学计算的一个非常重要的库,numpy主要用来处理一些矩阵对象,可以说numpy让Python有了Matlab的味道。   如何利用numpy来合并...