Python中同时追加多个列表


在Python中进行各种数据分析工作时,我们可能需要将许多Python列表组合成一个列表。这将有助于将其作为单个输入列表处理程序的其他部分所需的数据。通过减少进一步处理数据所需的循环次数,它可以提高性能。

使用+运算符

+运算符可以直接将列表连接在一起。我们只需在列表名称之间应用运算符,最终结果将存储在更大的列表中。列表中元素的顺序将被保留。

示例

 在线演示

listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am','1 pm']
listC = [1, 3, 6]

# Given lists
print("Given list A: " ,listA)
print("Given list B: " ,listB)
print("Given list C: ",listC)

# using + operator
res_list = listA + listB + listC

# printing result
print("Combined list is : ",res_list)

输出

运行以上代码将得到以下结果:

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : ['Mon', 'Tue', 'Wed', '2 pm', '11 am', '1 pm', 1, 3, 6]

使用zip

zip函数将来自每个列表的相同索引的元素组合在一起,然后移动到下一个索引。当您希望将列表中相同索引位置的元素组合在一起时,这种追加方法很有用。

示例

 在线演示

listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am','1 pm']
listC = [1, 3, 6]

# Given lists
print("Given list A: " ,listA)
print("Given list B: " ,listB)
print("Given list C: ",listC)

# using zip
res_list = list(zip(listA,listB , listC))

# printing result
print("Combined list is : ",res_list)

输出

运行以上代码将得到以下结果:

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : [('Mon', '2 pm', 1), ('Tue', '11 am', 3), ('Wed', '1 pm', 6)]

使用itertools.chain

来自itertools模块的chain函数可以将列表的元素组合在一起,同时保留它们出现的顺序。

示例

 在线演示

from itertools import chain

listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am','1 pm']
listC = [1, 3, 6]

# Given lists
print("Given list A: " ,listA)
print("Given list B: " ,listB)
print("Given list C: ",listC)

# using chain
res_list = list(chain(listA, listB, listC))

# printing result
print("Combined list is : ",res_list)

输出

运行以上代码将得到以下结果:

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : ['Mon', 'Tue', 'Wed', '2 pm', '11 am', '1 pm', 1, 3, 6]

更新于:2020年5月13日

8K+浏览量

启动您的职业生涯

完成课程后获得认证

开始学习
广告