我目前正在使用树莓派上的无限while循环将数据写入SD卡。
file = open("file.txt", "w")
while True:
file.write( DATA )
如果程序没有通过命令或键盘中断关闭,似乎有时file.txt并不总是会保存。是否有定期保存并确保数据被保存的方法?我正在考虑使用
open("file.txt", "a")
如何在无限循环中安全地存储数据?是否有更好的方式,而不是将数据追加到文件中并定时关闭文本文件,然后再次打开它?
我目前正在使用树莓派上的无限while循环将数据写入SD卡。
file = open("file.txt", "w")
while True:
file.write( DATA )
如果程序没有通过命令或键盘中断关闭,似乎有时file.txt并不总是会保存。是否有定期保存并确保数据被保存的方法?我正在考虑使用
open("file.txt", "a")
如何在无限循环中安全地存储数据?是否有更好的方式,而不是将数据追加到文件中并定时关闭文本文件,然后再次打开它?
with open("file.txt", "w") as myFile:
myFile.write(DATA)
本质上,这个 with 语句在这种情况下所做的是:
try:
myFile = open("file.txt", "w")
do_stuff()
finally:
myFile.close()
向您保证文件将被关闭,并且写入文件的信息将被保存。
关于with语句的更多信息可以在这里找到:PEP 343
CTRL-C
方法相当低级。如果要干净地关闭文件,请在代码中加入中断语句,这样您就可以优雅地处理关闭。
fileTest = open("file.txt", "a", 0)
。请不要使用内置名称“file”来执行操作。请使用其他变量名。 - Sukrit Kalra