我有一个包含各种元素(int)的列表列表。我想打印/写它,但是在列而不是行中。
示例:
l = [[1,2,3],[4,5],[6,7,8,9],[0]]
结果:
1 4 6 0
2 5 7 .
3 . 8 .
. . 9 .
答案 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 .