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

yipeiwu_com7年前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程序设计有所帮助。

相关文章

Pytorch 实现权重初始化

在TensorFlow中,权重的初始化主要是在声明张量的时候进行的。 而PyTorch则提供了另一种方法:首先应该声明张量,然后修改张量的权重。通过调用torch.nn.init包中的多...

PyTorch使用cpu加载模型运算方式

没gpu没cuda支持的时候加载模型到cpu上计算 将 model = torch.load(path, map_location=lambda storage, loc: stor...

详解Django中CBV(Class Base Views)模型源码分析

详解Django中CBV(Class Base Views)模型源码分析

在view文件中编写一个类,并配置好路由 class Test(View): def get(self, request, *args, **kwargs): return Ht...

pycharm重置设置,恢复默认设置的方法

pycharm重置设置,恢复默认设置的方法

window 系统 找到下方目录-->删除. 再重新打开pycharm # Windows Vista, 7, 8, 10: <SYSTEM DRIVE>\User...

Python面向对象编程基础解析(一)

1.什么是面向对象 面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的。应用在编程中,是一种开发程序的方法,它将对象作为程序的基本...