📜  Python|按元素连接两个列表

📅  最后修改于: 2022-05-13 01:55:07.816000             🧑  作者: Mango

Python|按元素连接两个列表

有时我们会遇到这种类型的问题,我们需要将一个列表的每个元素与另一个元素分开。此类问题通常发生在我们拥有组合信息的开发中,例如不同列表中的姓名和姓氏。让我们讨论可以执行此任务的某些方式。

方法 #1:使用列表理解 + zip()
列表推导式完成连接相似索引元素的任务。 zip函数的任务是将结果字符串连接成单个列表和返回列表。

# Python3 code to demonstrate 
# interlist element concatenation
# using list comprehension + zip()
  
# initializing lists  
test_list1 = ["Geeksfor", "i", "be"]
test_list2 = ['Geeks', 's', 'st']
  
# printing original lists
print ("The original list 1 is : " + str(test_list1))
print ("The original list 2 is : " + str(test_list2))
  
# using list comprehension + zip()
# interlist element concatenation
res = [i + j for i, j in zip(test_list1, test_list2)]
  
# printing result 
print ("The list after element concatenation is : " +  str(res))
输出:
The original list 1 is : ['Geeksfor', 'i', 'be']
The original list 2 is : ['Geeks', 's', 'st']
The list after element concatenation is : ['GeeksforGeeks', 'is', 'best']


方法 #2:使用map() + lambda + zip()
在该方法中,每个索引元素相互映射的任务由 map函数执行,相加的功能由 lambda函数执行。此方法仅适用于 Python2。

# Python code to demonstrate 
# interlist element concatenation
# using map() + lambda + zip()
  
# initializing lists  
test_list1 = ["Geeksfor", "i", "be"]
test_list2 = ['Geeks', 's', 'st']
  
# printing original lists
print ("The original list 1 is : " + str(test_list1))
print ("The original list 2 is : " + str(test_list2))
  
# using map() + lambda + zip()
# interlist element concatenation
res = list(map(lambda(i, j): i + j, zip(test_list1, test_list2)))
  
# printing result 
print ("The list after element concatenation is : " +  str(res))
输出:
The original list 1 is : ['Geeksfor', 'i', 'be']
The original list 2 is : ['Geeks', 's', 'st']
The list after element concatenation is : ['GeeksforGeeks', 'is', 'best']