Python怎么修改文件内容?Python修改文件内容的3种方法详解

我们在之前的学习中,学习了如何修改文件的名字,今天教大家学习如何利用Python来修改文件中的内容,为了让大家更好的理解修改文件内容的操作,在这篇文章中,介绍了3种方法,希望能给大家的学习带来一定的帮助,下面一起来看看吧 。

Python怎么修改文件内容?Python修改文件内容的3种方法详解

文章插图
Python修改文件内容,有两种模式,一种是直接在原文件中进行修改之后直接保存,还有一种方式是对修改之后的文件存储在一个新的文件中进行存储,下面分别来介绍这两种模式的操作方法 。
一、修改原文件方式
这种方式是直接在需要修改的文件上进行操作,修改好了之后会之后在当前的文件中保存,我们使用的是alter方法,它的基本语法格式如下:
函数名(file,old_str,new_str):【Python怎么修改文件内容?Python修改文件内容的3种方法详解】第一个参数表示的是文件名,old_str表示的是需要修改的字符串,new_str是修改之后的字符串 。代码如下:
 file_data = ""  with open(file, "r", encoding="utf-8") as f:    for HH in f:      if old_str in HH:        HH = HH.replace(old_str,new_str)      file_data += HH  with open(file,"w",encoding="utf-8") as f:    f.write(file_data)alter("HELLO", "2334", "python")二、将原文件修改后保存到新文件中
这种模式中,它包括了两种不同的方式可以将文件修改后,将内容写到一个新的文件中进行存储 。
1、使用python 字符串替换的方式
 这种方法会将替换的字符串写到一个新的文件中,然后将原文件删除,新文件改为原来文件的名字,代码如下:
import osdef alter(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 HH in f1:      if old_str in HH:        HH = HH.replace(old_str, new_str)      f2.write(HH)  os.remove(file)  os.rename("%s.bak" % file, file)alter("HELLO", "2334", "python")2、使用正则表达式
在Python的正则表达式中,有一个re.sub方法,是可以对文件的内容进行替换的操作的,具体的实现方法如下:
import re,osdef alter(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 HH in f1:      f2.write(re.sub(old_str,new_str,HH))  os.remove(file)  os.rename("%s.bak" % file, file)alter("file1", "admin", "password")以上就是Python怎么修改文件内容?Python修改文件内容的3种方法详解的全部内容,希望对大家的学习有所帮助 。

    推荐阅读