2016-11-08 95 views
-1
>list1=[1,2,3,4] 
>list2=[5,6,7,8] 
>list3=[9,10,11,12] 
>list4=[13,14,15,16] 
>list5=[17,18,19,20] 
>lists=[list1,list2,list3,list4,list5 

我想打印下面的代码列表,以便它输出这样:如何打印垂直蟒蛇

4 8 12 16 20 
3 7 11 15 19 
2 6 10 14 18 

遗憾没有知道它忽略新线:

enter image description here

1 5 9 13 17 

在此先感谢(新的python)

+0

请包括你所到目前为止已经试过。 – manfcas

+0

对不起,我上传了一张图片来表示它,我希望它能够以列的形式显示,垂直,我知道要将其打印为行: 我为列表: \t print i – user7134014

+0

丑陋的解决方案,但只是为了好玩: 'print(sum(zip(* [l [:: - 1] in list]),()))' – mitoRibo

回答

1

您可以实现这一目标的一种方法是将反向列表压缩并仅打印所有元素。

list1=[1,2,3,4] 
list2=[5,6,7,8] 
list3=[9,10,11,12] 
list4=[13,14,15,16] 
list5=[17,18,19,20] 

for l1, l2, l3, l4, l5 in zip(reversed(list1), reversed(list2), reversed(list3), reversed(list4), reversed(list5)): 
    print(l1, l2, l3, l4, l5, end=' ') 

输出

4 8 12 16 20 3 7 11 15 19 2 6 10 14 18 1 5 9 13 17 
+0

要使它在列中打印,您可以删除'end'参数 – chatton

+0

非常感谢! ! – user7134014