使用Python的列表实现对txt文本的修改,或者替换成指定字符串
代码:
import os
def alter(file,new_str):
"""
将修改后的字符串写到一个新的文件中,然后将原文件删除,新文件改为原来文件的名字
file: 文件路径
new_str: 替换后的新字符串
return: None
"""
#list1存放的是原文中想要替换掉的旧字符串,我这个是自己写的,大家可自定义
list1=['0','1',"2","3","4","5","6","7","8","9",":",".","-->"," ",","," "," "]
with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:
#使用迭代器遍历
for line in f1:
#将列表里要替换掉的字符串逐个使用replace()进行替换
for i in range(len(list1)):
if list1[i] in line:
line = line.replace(list1[i], new_str)
#将修改后的line逐个写到f2中
f2.write(line)
os.remove(file)
os.rename("%s.bak" % file, file)
alter("Test.txt", "新字符串")