4-4 修改檔案
阿新 • • 發佈:2018-11-28
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')