如何在python中垂直打印不同长度的2d列表
事实上,这是我试图做到的 我有一张班级电话卡如何在python中垂直打印不同长度的2d列表,python,python-2.7,Python,Python 2.7,事实上,这是我试图做到的 我有一张班级电话卡 class Card(object): def __init__(self, value, folldown,canMove): self.value = value self.folldown = folldown self.canMove=canMove 我用这个来打印 for i in range(len(cards)): for j in range(len(cards[i])): print ca
class Card(object):
def __init__(self, value, folldown,canMove):
self.value = value
self.folldown = folldown
self.canMove=canMove
我用这个来打印
for i in range(len(cards)):
for j in range(len(cards[i])):
print cards[i][j].value
我想打印不同大小的2d列表a=[[0,1],[0,1,2],[0,1,2,3]]
我想这样打印
0 0 0
1 1 1
2 2
3
我试着这样打印
for i in range(len(a)):
for j in range(len(a[i])):
print a[i][j]
但结果是
0
1
0
1
2
0
1
2
3
另一种,单线解决方案
a = [[0, 1], [0, 1, 2], [0, 1, 2, 3]]
from itertools import izip_longest
print "\n".join(("\t".join(map(str,l)) for l in izip_longest(*a, fillvalue="")))
你会得到:
0 0 0
1 1 1
2 2
3
0 0 0
1 1 1
2 2
3.
看起来你想让我们为你写些代码。虽然许多用户愿意为陷入困境的程序员编写代码,但他们通常只在海报已经试图自己解决问题时才提供帮助。演示这项工作的一个好方法是包括您迄今为止编写的代码、示例输入(如果有)、预期输出和实际获得的输出(控制台输出、回溯等)。你提供的细节越多,你可能得到的答案就越多。请检查和。您能否显示您的代码以及您遇到的错误,以便我们能够帮助解决此问题?请尝试一下,看看您是否能够使其正常工作。如果您觉得我需要有人来编写代码,则可能会重复抱歉。我对python没有太多的经验,我的代码太难理解,所以我认为把这个例子放在@morganthrapp上会更好。对于我的解决方案,我在x
print'\n.join(['\t'.join([str(x[I].value)if len(x)>I else''for a中的x])上使用这个I add value([len in(max(a)))]
0 0 0
1 1 1
2 2
3