我有一个44列宽的数据表,我需要写入文件。我不想写:
outfile.write("%i,%f,%f,$f ... )\n" % (i, a,b,c ...))
在Fortran中,您可以轻松指定多个格式说明符:
write (*,"(3f8.3)") a,b,c
Python中是否有类似的功能?
答案 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)))
......这不是你要求的,但在某些方面更好。