python - 从无限 While 循环保存到文本文件

标签 python while-loop

我目前正在将无限循环中的数据写入树莓派上的 SD 卡。

file = open("file.txt", "w")
while True:
    file.write( DATA )

如果程序没有通过命令或键盘中断关闭,有时 file.txt 似乎并不总是保存。是否有定期保存和确保数据保存的方法?我正在考虑使用
open("file.txt", "a")

附加到文件并定期关闭 txt 文件并再次打开它。在无限循环中运行时,是否有更好的方法来安全地存储数据?

最佳答案

文件的 write() 方法不一定将数据写入磁盘。您必须调用 flush() 确保发生这种情况的方法...

file = open("file.txt", "w")
while True:
    file.write( DATA )
    file.flush()
不用担心对 os.fsync() 的引用- 操作系统会假装数据已写入磁盘,即使实际上没有。

关于python - 从无限 While 循环保存到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16863857/

相关文章:

python - 使用 django orm 生成更新查询

Python GIL 和多线程

c++ - 为什么我的循环执行得太频繁了?

python - Pyqtgraph 多横轴

具有进程和池的 Python 生产者/消费者

python - 关于python中的global关键字

php - 基于 <select> PHP/Mysql 更改输入值

php - while 循环中的 strpos() 永远不会结束

c - 我的缓冲区有问题,我的 C 程序中的所有线程都不是很大

JavaScript 99Bottles - 无限循环