python修改txt内容
下面是我写的,供参考:
import os
path = r'D:Desktope'
files = list(filter(lambda file:file[-4:]=='.txt',os.listdir(path)))
for file in files:
with open(path+os.sep+file,'r+') as f:
data = f.read()
data.replace('wo','我')
f.write(data)
⑵ 使用python 读取文本并改写成自己需要的内容,修改每一行内容并且没间隔几行就添加一行新的内容
defaddtext(txtname,span,insert):
txtfile=open(txtname);
txt=txtfile.readlines()
txt=['auto+'+lineforlineintxt]
txtfile.close()
txtfile=open(txtname,'w')
i=0
whilei+span<len(txt):
txtfile.writelines(txt[i:i+span])
txtfile.write(insert)
txtfile.write(' ')
i+=span
txtfile.writelines(txt[i:len(txt)])
txtfile.close()
addtext('list.txt',2,'thelaber')
每隔两行添加一个the laber,如果希望改变间隔将代码最后一行中间的数字2改变就行了
⑶ python读取txt文件,查找到指定内容,并做出修改
def modifyip(tfile,sstr,rstr):
try:
lines=open(tfile,'r').readlines()
flen=len(lines)-1
for i in range(flen):
if sstr in lines[i]:
lines[i]=lines[i].replace(sstr,rstr)
open(tfile,'w').writelines(lines)
except Exception,e:
print e
modifyip('a.txt','a','A')
⑷ python编辑一个txt格式文本文件
import re,os
def updateFile(file,old_str,new_str):
with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:
for line in f1:
f2.write(re.sub(old_str,new_str,line))
os.remove(file)
os.rename("%s.bak" % file, file)
updateFile(r"D:\zdz\myfile.txt", "zdz", "daziran")#将"D:\zdz\"路径的myfile.txt文件把所有的zdz改为daziran
⑸ Python如何将文件夹中的所有txt文件的内容替换
很直接简单的方法就是,遍历文件夹下所有的txt文件,然后读取内容,把内容中的","替换成空格,然后重新写入这个文件,这样就可以了。
⑹ python里怎样替换,修改文本内容
当我们读取文件中内容后,如果想要修改文件中的某一行或者某一个位置的内容,在python中是没有办法直接实现的,如果想要实现这样的操作只能先把文件所有的内容全部读取出来,然后进行匹配修改后写入到新的文件中。
实例代码如下所示:
备注:
1. 旧文件的内容
hello,world
yanyan is good girl
Good day is good day
2. 新文件在代码执行后的内容
hello,world
yanyan is good girl
hello,yanyan
3. 需要注意的是权限的问题,对于旧文件必须要有读取权限,对于新的文件必须要有写入权限
⑺ 使用python编程,实现对txt文件中每行内容进行追加。
#-*-coding:utf-8-*-
importre
importos
filepath='E:\data11-20\0.025'
#filepath=os.getcwd()
lst=[]
foriinrange(3,100):
filename='plane1-conv{:03d}.out'.format(i)
fullname=(os.sep).join([filepath,filename])
withopen(fullname)asf:
s=f.read().strip()
lst1=[re.split(r's+',si.strip())[-1]forsiins.split(' ')]
lst.append(lst1)
#lst是一个二维数组,每个文件的最后一列作为一个一维数组存在里面
#然后找出最长列的长度lmax,其他比它短的数据列,用lmax-len(i)组空格补到和它一样长
#每组空格的数目等于数据列的第一个数据的长度
lmax=max([len(i)foriinlst])
ws=[i+[''*len(i[0])]*(lmax-len(i))foriinlst]
withopen('E:\hehe.txt','w')aswf:
wf.write(' '.join([''.join(i)foriinws]))