在2个列表的n个位置连接字符串

时间:2018-09-15 08:56:16

标签: python

我正在尝试从2个列表的第n个位置连接字符串。但是我似乎无法使它工作

输入:

['57', '60', '55',..., '56']

['g', 'b', 'r',..., 'b']

输出:

['57g', '60b', '55r',..., '56b']

2 个答案:

答案 0 :(得分:8)

利用内置的全部功能,可以使用mapzipstr.join执行以下操作:

l1 = ['57', '60', '55', '56']
l2 = ['g', 'b', 'r', 'b']

list(map(''.join, zip(l1, l2)))
# ['57g', '60b', '55r', '56b']

大致等同于以下comprehension

[''.join(pair) for pair in zip(l1, l2)]
# ['57g', '60b', '55r', '56b']

依次可以仅使用简单的字符串连接:

[x1 + x2 for x1, x2 in zip(l1, l2)]
# ['57g', '60b', '55r', '56b']

zip是所有元素中的关键功能,因为 parallel  多个可迭代对象的对(三重,四重,...)迭代。

答案 1 :(得分:0)

解决此问题的最简单方法是:

L1=['57', '60', '55',.......'56']
L2=['g', 'b', 'r',......'b']
list=[]
for i in range(length of your array):
     list.append(L1[i]+L2[i])
print(list) 

list.append()方法用于将值插入列表。假设您要在列表中插入4,然后:

list=[1,2,3]
list.append(4)
print(list)

输出:

[1,2,3,4]

希望你能理解