将列表列表转换为分隔字符串

时间:2009-05-22 15:11:45

标签: python

如何仅使用内置模块在Python 2.2中执行以下操作?

我有一个这样的清单列表:
[['dog',1],['cat',2,'a'],['rat',3,4],['bat',5]]

从中我想生成一个像这样的表的字符串表示,其中列由制表符分隔,行由换行符分隔。

dog 1
cat 2   a
rat 3   4
bat 5

即。
'狗\ T1 \ NCAT \ T2 \ TA \ nrat \ T3 \ T4 \ nbat \ T5'

2 个答案:

答案 0 :(得分:19)

像这样,也许:

lists = [['dog', 1], ['cat', 2, 'a'], ['rat', 3, 4], ['bat', 5]]
result = "\n".join("\t".join(map(str,l)) for l in lists)

这使用制表符连接所有内部列表,并使用换行连接结果字符串列表。

它使用名为list comprehension的功能来处理外部列表。

答案 1 :(得分:4)

# rows contains the list of lists
lines = []
for row in rows:
    lines.append('\t'.join(map(str, row)))
result = '\n'.join(lines)