文件内容的修改

1. 第一种修改方式:

      将文件的内容全部加载到内存中进行修改,改完后加载到硬盘。

   

 1 #!/usr/bin/env python
 2 # encoding: utf-8
 3 
 4 f = open(file = 'old_file.txt', mode = 'r+', encoding = 'utf-8')
 5 
 6 old_str = '我们'
 7 new_str = '你们'
 8 data = f.read()
 9 
10 data = data.replace(old_str, new_str)
11 
12 f.seek(0)
13 f.truncate()
14 f.write(data)
15 
16 f.close()
View Code

      上面的例子,就是把old_file.txt中的'我们'替换成'你们'。

2. 第二种修改方式:

      将文件中的内容一行一行的加载到内存中,当第一行加载到内存进行替换,替换完成后再加载到硬盘,再加载 第二行,如此类推。

  

 1 #!/usr/bin/env python
 2 # encoding: utf-8
 3 
 4 import os
 5 
 6 f1_name = 'old_file.txt'
 7 f2_name = 'new_file.txt'
 8 
 9 old_str = '我们'
10 new_str = '你们'
11 
12 f1 = open(file = f1_name, mode = 'r', encoding = 'utf-8')
13 f2 = open(file = f2_name, mode = 'w', encoding = 'utf-8')
14 
15 for line in f1:
16     if old_str in line:
17         line = line.replace(old_str, new_str)
18     f2.write(line)
19 
20 os.rename(f2_name, f1_name)
21 
22 f1.close()
23 f2.close()
View Code

      上面的例子是把old_file.txt中的'我们'替换成'你们',然后保存到new_file.txt。通过重命名方式将new_file.txt 改为old_file.txt,覆盖原来的old_file.txt。

原文地址:https://www.cnblogs.com/hyan0913/p/8648692.html