如果出现任何中断,如何确保写入文件? 考虑一下这段代码
with open('output.txt', 'a') as FH:
for i in range(5):
mystr = 'some text %d\n' %i
FH.write(mystr)
time.sleep(2)
如果此代码正在运行并且您使用Ctrl + c中断它,它仍会写入输出文件。 但是如果你使用Ctrl + z,它不会在文件中写任何东西!
答案 0 :(得分:2)
写完后立即冲洗缓冲区:
FH.write(mystr)
FH.flush()