python实现嵌套列表平铺的两种方法

yipeiwu_com6年前Python基础

方法一:使用列表推导式

>>> vec = [[1,2,3],[4,5,6],[7,8,9]]
>>> get = [num for elem in vec for num in elem]
>>> get

[1, 2, 3, 4, 5, 6, 7, 8, 9]

方法相当于

>>> vec = [[1,2,3],[4,5,6],[7,8,9]]
>>> result = []
>>> for elem in vec:
for num in elem:
result.append(num)
>>> result

[1, 2, 3, 4, 5, 6, 7, 8, 9]

方法二:

使用sum函数

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

[1, 2, 3, 4, 5, 6, 7, 8, 9]

或者是使用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设计】。

相关文章

使用Python正则表达式操作文本数据的方法

什么是正则表达式 正则表达式,是简单地字符的序列,可指定特定的搜索模式。正则表达式已存在很长一段时间,并且它本身就是计算机科学的一个领域。 在 Python中,使用Python的内置r...

python练习程序批量修改文件名

复制代码 代码如下:# encoding:utf-8 ### 文件名如:# 下吧.mp3##import os,re fs=os.listdir('xb')for f in fs:&nb...

Ubuntu下使用python读取doc和docx文档的内容方法

读取docx文档 使用的包是python-docx 1. 安装python-docx包 sudo pip install python-docx 2. 使用python-docx...

centos下更新Python版本的步骤

安装完CentOS5.9(Final)后,执行#Python与#python -V,看到版本号是2.4.3,很老了,而且之前写的都是跑在python3.X上面的,3.X和2.X有很多不同...

将Python文件打包成.EXE可执行文件的方法

利用Python写了一个小脚本想要传给使用Windows但没有装Python的朋友执行,这时候就可以利用将档案包装成exe档案,让没有Python的朋友也可以执行。本篇将介绍利用套件...