python - 即使发生任何中断也可以写入文件

标签 python linux file-io

如何确保在发生任何中断的情况下该文件已写入? 考虑这段代码

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,它不会在文件中写入任何内容!

最佳答案

写入后立即刷新缓冲区:

FH.write(mystr)
FH.flush()

关于python - 即使发生任何中断也可以写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25057683/

相关文章:

python - 无法通过 pop 方法删除所有元素

c++ - 是否有任何可用的操作/围栏比发布弱但仍提供同步语义?

python - 如果我不关闭 txt 文件会发生什么

C 二进制 I/O 程序问题

python - 如何打开一个文件进行读写?

python - python 扩展上的地址 sanitizer

python - selenium 中是否有任何方法可以获取文本为 "Link"或简单文本

python - python中使用文件i/o的回文程序

linux - 如何从 shell 将一个文件 append 到 Linux 中的另一个文件?

linux - 无法将 Wordpress 目录的内容复制到 Web 服务器根目录