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

下面的代码实现删除行列,但问题是:在写入每行数据时,它就会覆盖上面写的行,文件最后就只有最后一行数据。如果将open(f,'w')写入方式更改为open(f,'a+'),... 下面的代码实现删除行列,但问题是:在写入每行数据时,它就会覆盖上面写的行,文件最后就只有最后一行数据。如果将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') #循环将每行数据写入文件
展开
 我来答
at...7@sohu.com
2017-09-14 · TA获得超过222个赞
知道小有建树答主
回答量:261
采纳率:33%
帮助的人:44.9万
展开全部
顺序文件不能直接再前面追加写入,可按下列步骤,利用下述步骤来实现1 创建一个新的文件。2 写入要追加的数据3从原文件中读取数据,追加写入新文件中4 删除原文件。5 重新命名新文件为老文件名。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式