在python中覆盖文件

Jos*_*ter 7 python file-io overwrite

我试图在python中写一个文件,所以它只保留从串口读取的最新信息.我已经尝试了几种不同的方法并阅读了不同的帖子,但文件一直在反复写入信息而不覆盖之前的条目.

 import serial

 ser=serial.Serial('/dev/ttyUSB0',57600)

 target=open( 'wxdata' , 'w+' )

 with ser as port, target as outf:
      while 1:
           target.truncate()
           outf.write(ser.read))
           outf.flush()
Run Code Online (Sandbox Code Playgroud)

我有一个气象站无线发送数据到树莓派,我只是希望文件保持收到一行当前数据.现在它只是不断循环并一遍又一遍地添加.任何帮助将不胜感激..

Ved*_*kib 0

在开始写入文件之前,添加以下行:

outf.seek(0)
outf.truncate()
Run Code Online (Sandbox Code Playgroud)

这将使您接下来写入的任何内容都将覆盖该文件