【发布时间】:2014-05-28 17:07:10
【问题描述】:
我正在尝试将我的输出写入一个新文件。所需的输出是 4 行,n 列。在终端中打印时效果很好,但是一旦我尝试将输出写入文件,它就会全部打印在一行上。
这是我在打印到文件之前一直有效的代码。我不知道为什么输出不一样。任何人都可以解释为什么它会有所不同,我该如何解决这个问题? (对不起,我是一个新手,所以简单的术语会很有帮助!)感谢任何帮助!
with open("file.txt", "w") as p:
pwm = f.readlines()
lis=[x.split() for x in pwm]
for x in zip(*lis):
pwm = "\t".join(x)
print str(pwm) # this prints in required format
p.write(str(pwm)) # this prints all on one line
需要的输出:
0.224 0.128 0.536 0.009 0.007 0.085 0.013 0.097 0.058
0.339 0.152 0.136 0.002 0.002 0.009 0.876 0.031 0.829
0.250 0.421 0.299 0.004 0.065 0.845 0.027 0.834 0.007
0.186 0.299 0.029 0.985 0.926 0.061 0.084 0.038 0.106
文件输出:
0.224 0.128 0.536 0.009 0.007 0.085 0.013 0.097 0.058 0.339 0.152 0.136 0.002 0.002 0.009 0.876 0.031 0.829 etc...
【问题讨论】:
-
write不会隐式添加换行符,print会。 -
写pwm后加
p.write('\n')?