Python - 列中的列表列表

时间:2011-02-05 19:08:21

标签: python list csv

我有一个包含各种元素(int)的列表列表。我想打印/写它,但是在列而不是行中。

示例:

l = [[1,2,3],[4,5],[6,7,8,9],[0]]

结果:

1 4 6 0
2 5 7 .
3 . 8 .
. . 9 .

2 个答案:

答案 0 :(得分:14)

最简单的方法是使用itertools.izip_longest()

for x in itertools.izip_longest(*l, fillvalue="."):
    print " ".join(str(i) for i in x)

答案 1 :(得分:3)

此:

import itertools

l = [[1,2,3],[4,5],[6,7,8,9],[0]]

for t in itertools.izip_longest(*l):
    print "".join("%3d" % x if x is not None else "  ." for x in t)

产生

  1  4  6  0
  2  5  7  .
  3  .  8  .
  .  .  9  .