python 如何先清除文件内容,再追加写入?

下面的代码实现删除行列,但问题是:在写入每行数据时,它就会覆盖上面写的行,文件最后就只有最后一行数据。如果将open(f, 'w')写入方式更改为open(f, 'a+'),未删除行列的数据又会保存在文件中,请问该怎么修改?

import os

LineNumber=int(input("删除前()行:"))
ColummNumber=int(input("删除前()列:"))
for f in os.listdir('.'):
if '.txt' in f:
lines = open(f).readlines() #读取文件所有行
newlines=lines[LineNumber:] #删除文件行
for line in newlines: #循环读取每行
data=line.split() #以空格分割行数据
newline=data[ColummNumber:] #删除每行前ColummNumber数据
#print(newline)
open(f, 'w').writelines(" ".join(str(i) for i in newline)+'\n') #循环将每行数据写入文件

顺序文件不能直接再前面追加写入,可按下列步骤,利用下述步骤来实现1 创建一个新的文件。2 写入要追加的数据3从原文件中读取数据,追加写入新文件中4 删除原文件。5 重新命名新文件为老文件名。
温馨提示:答案为网友推荐,仅供参考
相似回答