python怎么用批量删除txt中固定内容

要求是这样,Python3.x我有一组txt,文件都很大,开头结尾有内容需要删除,同目录下有txt文件a.txt,里面放置需要删除的内容,开头一行,结尾一行,那组txt删... 要求是这样,Python3.x
我有一组txt,文件都很大,开头结尾有内容需要删除,同目录下有txt文件a.txt,里面放置需要删除的内容,开头一行,结尾一行,那组txt删除的开头内容后面有用<>括起的字符串,将当前txt名修改为这串字符
展开
 我来答
百度网友29d79c26e1
推荐于2016-03-01 · TA获得超过665个赞
知道小有建树答主
回答量:150
采纳率:0%
帮助的人:95.1万
展开全部

假设原文件名是:1.txt

其开头一行是:21312435<example>34rdrt7654

需要一个函数

import re,os
def change_rename(filename="1.txt",deleted="a.txt"):
   lines=open(filename,'r').readlines()
   newname=re.findall(r'<[\w]*>',lines[0])[0][1:-1] #get new file name from line 1
   open(newname,'w').write(''.join(lines[1:-1])) #write to new file
   open(deleted,'a').write(lines[0]+lines[-1]) #save deleted info
   os.remove(filename) #delete old file
   
#接下里批量处理
oldfiles=os.listdir('.')
for i in oldfiles:
    if i!='a.txt':
        change_rename(i)

  

 把这段代码保存下来,放到你txt文件所在的目录,运行之。因为没有见到文件,为了保险起见,先用复制出一两个文件测试一下!!!删除后是不进回收站的!如果你看得懂,就自行修改吧。

更多追问追答
追问
有没有简单点的方案,要删除的其实很少,拷贝一遍处理,1G多的txt让我如何是好
txt的文件名是从1到1000多,数字有中断,文件名固定在开头3~4行
yycgis
2014-06-18 · TA获得超过8267个赞
知道大有可为答主
回答量:6831
采纳率:63%
帮助的人:1545万
展开全部
你好:
能不能详细描述下;
这是不能说明问题的!
追问
我有一组txt,文件都很大,开头结尾有内容需要删除,那组txt删除的开头内容后面有用括起的字符串,将当前txt名修改为这串字符,同目录下有txt文件a.txt,里面放置需要删除的内容,开头一行,结尾一行
拜托了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式