8

假设我有一个结构如下的 numpy 数组:

[['a','b','c'],[1,2,3],['i','j','k','l'],[5,10,15,20]]

我想将它保存到一个看起来像这样的 csv 文件

a, 1, i, 5
b, 2, j, 10
c, 3, k, 15
,  ,  l, 20

长度较短的列只填充空白。我怎样才能做到这一点?

4

1 回答 1

14

使用itertools.izip_longest

>>> from itertools import izip_longest
>>> lis =  [['a','b','c'],[1,2,3],['i','j','k','l'],[5,10,15,20]]
>>> list(izip_longest(*lis, fillvalue=''))
[('a', 1, 'i', 5),
 ('b', 2, 'j', 10),
 ('c', 3, 'k', 15),
 ('', '', 'l', 20)]

用于csv.writerows(izip_longest(*lis, fillvalue=''))将其写入 csv 文件。

于 2013-10-22T06:25:41.367 回答