Python-如何在列中写入数据块?

时间:2012-04-09 09:31:04

标签: python

我想要在txt或csv文件中写入数据块。 这些数据块包含在

中的子列表中
data=[[('a1','b1'),('c1','d1')],
      [('a2','b2'),('c2','d2'),('e2','f2')],
      [('a3','b3'),('c3','d3'),('e3','f3')]]

我希望块显示在由制表符分隔的列组中 任何想法?
谢谢,
吉姆

3 个答案:

答案 0 :(得分:3)

>>> from itertools import izip_longest
>>> data=[[('a1','b1'),('c1','d1')],[('a2','b2'),('c2','d2'),('e2','f2')],[('a3','b3'),('c3','d3'),('e3','f3')]]
>>> for columns in izip_longest(*data,fillvalue=''):
        print '\t'.join(map(' '.join,columns))


a1 b1   a2 b2   a3 b3
c1 d1   c2 d2   c3 d3
        e2 f2   e3 f3

答案 1 :(得分:0)

查看文档here,了解有关如何解决此问题的一些示例。您可以根据需要定义“标签”,无论是2或4个空格,还是适合您应用的任何内容。

答案 2 :(得分:0)

CSV模块提供了一个名为“DictWriter”的类,它将完全满足您的要求。 你可以看看here