用Python打印多个垂直和格式化的列表

用Python打印多个垂直和格式化的列表,python,list,printing,Python,List,Printing,假设我有四个列表: l1=[3,5,6] l2=[0,2] l3=[3,4,3,1,2] l4=[2,3,2] 我想把它们打印成这样: 2 1 6 3 2 5 2 4 3 3 0 3 2 有人能帮我吗?您可以通过使用多维数组来存储列表来解决这个问题。然后在它们之间循环检查要显示的值,同时使用if语句在当前没有值的情况下打印一个空格(即在没有值的情况下将数组初始化为none)。我相信,如果您这样构造它,您可能会取得一些成功如果您使用的是Pyth

假设我有四个列表:

l1=[3,5,6]
l2=[0,2]
l3=[3,4,3,1,2]
l4=[2,3,2]
我想把它们打印成这样:

      2
      1  
6     3  2
5  2  4  3
3  0  3  2

有人能帮我吗?

您可以通过使用多维数组来存储列表来解决这个问题。然后在它们之间循环检查要显示的值,同时使用if语句在当前没有值的情况下打印一个空格(即在没有值的情况下将数组初始化为none)。我相信,如果您这样构造它,您可能会取得一些成功

如果您使用的是Python 2.x,那么您可以从itertools使用:

for i in reversed([' '.join(map(str,i)) for i in izip_longest(l1, l2, l3, l4, fillvalue=' ')]):
    print i
在Python3.x中,可以使用fromitertools

输出:

    2
    1
6   3 2
5 2 4 3
3 0 3 2

itertools.zip\u
在你展示你已经尝试过的东西之前,没有人会为你做这件事。