将列表打印到python中的表中

时间:2013-05-21 19:19:13

标签: python list

如果我有三个列表,例如

a = [1, 2, 3]
b = [4, 5, 6]
c = [7, 8, 9]

想要像这样打印

1  4  7
2  5  8
3  6  9

我该怎么做?

3 个答案:

答案 0 :(得分:8)

这很困难的部分是转置阵列。但这很简单,zip

a = [1, 2, 3]
b = [4, 5, 6]
c = [7, 8, 9]
t = zip(a, b, c)

现在你打印出来:

print('\n'.join('  '.join(map(str, row)) for row in t))

答案 1 :(得分:6)

这应该这样做:

'\n'.join(' '.join(map(str,tup)) for tup in zip(a,b,c))

答案 2 :(得分:2)

使用 list comprehension 生成器表达式,不带map函数:

'\n'.join(' '.join(str(y) for y in x) for x in zip(a,b,c))