4-4 修改文件
1、使用.replace()修改文件内容
方法一
1 with open('users','a+') as fw: 2 fw.seek(0) # 指针移动到文件开始 3 result = fw.read() # 文件大的时候, 4 new_result = result.replace('abc','ABC') 5 fw.seek(0) 6 fw.truncate() # 清空文件内容 7 fw.write(new_result) 8 print(new_result)
2、修改文件
方法二
1 # 第二种 2 import os 3 with open('users') as fr,open('.users','w',encoding= 'utf-8') as fw: 4 for line in fr: # 需要修改的文件里面读 5 new_line = line.replace('ABC','修改文件') 6 fw.write(new_line) # 将修改后的文件写入.users文件 7 8 os.remove('users') # 删除users文件 9 os.rename('.users','users') # 将.users文件重命名为users
3、修改文件
练习
1 # 1、把文件里面没有交作业人名字后面加上没交 2 #已经交作业的加上交了 3 4 #1、读文件 5 #2、按照空格分隔每个人作业信息 6 # 杨娟 1 [杨娟,1] 7 #潘飞 [潘飞] 8 # 杨娟 已交 9 # 潘飞 未交 10 import os 11 fr = open('stu.txt',encoding='utf-8') 12 fw = open('new_stu.txt','w',encoding='utf-8') 13 14 for line in fr: 15 line_list = line.split() 16 if len(line_list)>1: 17 line_list[-1] = '已交\n' 18 else: 19 line_list.append('未交\n') 20 fw.writelines(line_list) 21 os.remove('stu.txt') 22 os.rename('new_stu.txt','stu.txt')