我对Python还不太熟悉,所以希望我只是在这里遗漏了一些显而易见的东西,但这让我很为难。我的程序片段如下:
outFile = open('P4Output.txt', 'w')
outFile.write(output)
print output
print "Output saved to \"P4Output.txt\"\n"
输出正确地打印到控制台,但如果我打开文件,它是空白的。如果删除该文件并再次执行程序,则会创建该文件,但仍为空。我以前在我的另一个程序中使用了完全相同的代码块,它工作了,而且仍然工作。但是,如果我打开Python并尝试以下简单方法:
f = open('test.txt', 'w')
f.write("test")
再次创建test.txt,但保留为空。给什么?
由于缓冲,字符串在调用
flush()
或close()
之前可能不会实际显示在文件中。所以试着在f.write()
之后调用f.close()
。此外,建议对文件对象使用with
,即使您由于异常或return
语句提前脱离with
块,它也会自动为您关闭文件。你需要做一个
如果希望将缓冲内容写入磁盘。 如果已完成对文件的写入,则在关闭文件之前,
file.close
调用将隐式刷新缓冲数据。你在课程结束时做过
f.close()
吗?相关问题 更多 >
编程相关推荐