缩短格式化输出的代码

时间:2013-01-17 14:40:34

标签: python

我必须将二维数组(比如数组[100] [20])写入文件中。这只是我的代码的一个例子:

for i in range(0,99):
  print >> file, "%15.9e%24.15e%3d..." % (array[i][0], array[i][1], array[i][2], ... )

是否可以在带有切片或类似符号的“%”符号后缩短它?

2 个答案:

答案 0 :(得分:3)

你可以这样做:

print >> file, format_string % tuple(array[i])

那就是说,我认为我可能会在这里使用numpy来保存数据,这种格式不是ascii的效率(无论是在IO和磁盘空间上花费的时间)。

答案 1 :(得分:2)

冒着被投票的风险,你确定你问的是正确的问题吗?我总是发现,如果某些东西很丑或很难,那可能不是最好的方法,特别是在Python中。

您可以查看csv module ---您想要写什么格式?

还有texttable模块,可以为您制作漂亮的表格,甚至可以将它们转储到文本文件中。

最后,如果你应该如此倾向,那么Python Excel Utilities会将内容转储到Excel电子表格中。我已经在该模块中写了一些excel read和excel写接口的包装器,如果你愿意的话我会在这里发帖 - 它们没什么特别的,但是它们可以节省你一些时间。