Python 数组到表格式的数组

Python 数组到表格式的数组,python,arrays,Python,Arrays,我有一个数组,其中每个内部数组的大小都是可变的,每次运行都会发生变化。e、 g: a = [[T1], [4, 5, 6], ['a', 'b']] 我要做的是将它打印为一个表,第一个数组是col_1,第二个col_2,然后是col_3。目前,只有3个Col。预期结果: COL1 COL2 COL3 ---- ---- ---- T1 4 a 5 b 6 我想我有两个主要问

我有一个数组,其中每个内部数组的大小都是可变的,每次运行都会发生变化。e、 g:

a = [[T1], [4, 5, 6], ['a', 'b']]
我要做的是将它打印为一个表,第一个数组是col_1,第二个col_2,然后是col_3。目前,只有3个Col。预期结果:

COL1     COL2     COL3
----     ----     ----
T1       4        a
         5        b
         6      
我想我有两个主要问题:
1.可以这样做吗
2.如何解释每个数组的差异大小-不是在格式方面,而是在可能没有的元素中循环

非常感谢


p、 我目前正在试验zip(),因为它看起来可以工作,但每个数组中的元素数量仍然不匹配。

使用
zip
的方法是正确的。要在没有内容的地方填充内容,请使用
itertools.zip_longest
(在python 2中,
izip_longest
):


使用
zip
,您走在正确的轨道上。要在没有内容的地方填充内容,请使用
itertools.zip_longest
(在python 2中,
izip_longest
):

我目前正在试验zip(),因为它看起来可以工作,但每个数组中的元素数量仍然不匹配

是的,正如文档所说,
zip
会在任何数组停止时立即停止

但是
itertools
模块有一个名为(或
izip_longest
,在2.x中)的函数来解决这个问题

在这种情况下,您只需指定所需的填充值,可能是
'

我目前正在试验zip(),因为它看起来可以工作,但每个数组中的元素数量仍然不匹配

是的,正如文档所说,
zip
会在任何数组停止时立即停止

但是
itertools
模块有一个名为(或
izip_longest
,在2.x中)的函数来解决这个问题

在这种情况下,您只需指定所需的填充值,可能是
'

for line in zip_longest(*a,fillvalue=''):
    print('\t'.join(map(str,line)))

T1      4       a
        5       b
        6       
for row in itertools.zip_longest(*a, fillvalue=''):
    print('\t'.join(row))