python-20 文件操作1-全文字符串替换

import os

# 文件替换方法1:使用str.replace方法
def alter(file, old_str, new_str):
    """
    将替换的字符串写到一个新的文件中,然后将原文件删除,新文件改为原来文件的名字
    :param file: 文件路径
    :param old_str: 需要替换的字符串
    :param new_str: 替换的字符串
    :return: None
    """
    with open(file, "r", encoding="utf-8") as f1, open("%s.bak" % file, "w", encoding="utf-8") as f2:
        for line in f1:
            if old_str in line:
                line = line.replace(old_str, new_str)
            f2.write(line)
    os.remove(file)
    os.rename("%s.bak" % file, file)


alter("file1", "python", "测试")

'''
# 使用正则表达式 替换文件内容 re.sub 方法替换
import re,os
def 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 line in f1:
            f2.write(re.sub(old_str,new_str,line))
    os.remove(file)
    os.rename("%s.bak" % file, file)
alter("file1", "admin", "password")
'''
posted @ 2023-04-21 15:40  冰冷的火  阅读(71)  评论(0)    收藏  举报