python逐项组合数组

时间:2016-03-25 23:06:48

标签: python arrays

如果我有三个阵列,第一个是 A,B,C,D ,第二个是 E,F,G,H 最后一个是 I,J,K,L 我想使用这三个数组并输出如下:

AEI
BFJ
CGK
DHL

我试试这段代码

import re
array1 = 'A','B','C','D'
array2 = 'E','F','G','H'
array3 = 'I','J','K','L'
arys = [array1,array2,array3]

for a,b,c,d in arys:
    print a+b+c+d

它没有用

如何使这项工作

3 个答案:

答案 0 :(得分:4)

试试这个:

array1 = 'A','B','C','D'
array2 = 'E','F','G','H'
array3 = 'I','J','K','L'
for elems in zip(array1, array2, array3):
    print ''.join(elems)

打印

AEI
BFJ
CGK
DHL

编辑:您也可以将3个字符串压缩在一起,而不是创建元组并获得相同的输出:

for elems in zip("ABCD", "EFGH", "IJKL"):
    print(''.join(elems))

答案 1 :(得分:1)

你也可以在python2中使用map:

array1 = 'A','B','C','D'
array2 = 'E','F','G','H'
array3 = 'I','J','K','L'
print("\n".join(map("".join, map(None, array1, array2, array3))))
AEI
BFJ
CGK
DHL

答案 2 :(得分:1)

这是一种简单的方法(你肯定想在这里使用zip()):

array1 = 'A','B','C','D'
array2 = 'E','F','G','H'
array3 = 'I','J','K','L'

for triplet in zip(array1, array2, array3):
    print ''.join(triplet)