Python 中将元组列表转换为列表
我们可能会遇到元素为元组的列表。但为了进一步的数据处理,我们可能需要将元组转换为列表的普通元素。在本文中,我们将了解实现此目标的方法。
使用列表推导式
在这种方法中,我们设计嵌套的 for 循环来遍历每个元组并生成最终的元素列表。
示例
listA = [('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
# Given list
print("Given list : \n", listA)
res = [item for t in listA for item in t]
# Result
print("Final list: \n",res)输出
运行以上代码将得到以下结果:
Given list :
[('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
Final list:
['Mon', 3, 'Wed', 4, 'Fri', 7, 'pm']使用 itertools
我们还可以使用 itertools.chain 方法以及 * 运算符,它将获取元组列表中的每个元素,然后将它们组合为列表的一系列元素。
示例
import itertools
listA = [('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
# Given list
print("Given list : \n", listA)
res = list(itertools.chain(*listA))
# Result
print("Final list: \n",res)输出
运行以上代码将得到以下结果:
Given list :
[('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
Final list:
['Mon', 3, 'Wed', 4, 'Fri', 7, 'pm']使用 reduce 和 concat
reduce 函数用于将 concat 函数应用于每个列表元素,最终生成包含原始列表所有元素的列表。
示例
import operator
from functools import reduce
listA = [('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
# Given list
print("Given list : \n", listA)
res = (list(reduce(operator.concat, listA)))
# Result
print("Final list: \n",res)输出
运行以上代码将得到以下结果:
Given list :
[('Mon', 3), ('Wed', 4), ('Fri', 7, 'pm')]
Final list:
['Mon', 3, 'Wed', 4, 'Fri', 7, 'pm']
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP