Python中有多格式说明符吗?

时间:2009-06-03 17:18:54

标签: python

我有一个44列宽的数据表,我需要写入文件。我不想写:

outfile.write("%i,%f,%f,$f ... )\n" % (i, a,b,c ...)) 

在Fortran中,您可以轻松指定多个格式说明符:

write (*,"(3f8.3)") a,b,c

Python中是否有类似的功能?

4 个答案:

答案 0 :(得分:21)

>>> "%d " * 3
'%d %d %d '
>>> "%d " * 3 % (1,2,3)
'1 2 3 '

答案 1 :(得分:3)

你问的是

吗?
format= "%i" + ",%f"*len(row) + "\n"
outfile.write( format % ([i]+row))

答案 2 :(得分:0)

不完全相同,但您可以尝试这样的事情:

values=[1,2.1,3,4,5]  #you can use variables instead of values of course
outfile.write(",".join(["%f" % value for value in values]));

答案 3 :(得分:0)

请注意,我认为执行以下操作会更好:

outfile.write(", ".join(map(str, row)))

......这不是你要求的,但在某些方面更好。