python修改文件内容_自定义函数

这里直接贴源码了

1. --替换文件内容(方式1)

通过打开文件读取文件行存入变量,再修改变量,再重打开文件将修改过的变量存储数据写入到原文件中。

def alter_1(file_name, old_str, new_str):
    # 方式1:通过打开文件读取文件行存入变量,再修改变量,再重打开文件将修改过的变量存储数据写入到原文件中。
    file_data = ""
    with open(file_name, 'r', encoding="utf-8") as read_f:
        for readLine in read_f:
            line = readLine.replace(old_str, new_str)
            file_data += line
    print(file_data)
    read_f.close()
    with open(file_name, 'w', encoding="utf-8") as write_f:
        write_f.write(file_data)
    read_f.close()

alter_1("test.conf", "c", "**")

2. --替换文件内容(方式2)

新建个空白文件,把原文件内容和要修改的内容写到新文件中进行存储。

import re, os

def alter_2(file, old_str, new_str):
    # 方式2:新建个空白文件,把原文件内容和要修改的内容写到新文件中进行存储。
    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_2("test.conf", "c", "**")

3. --替换文件内容(方式3)

新建个空白文件,把原文件内容和要修改的内容写到新文件中进行存储(使用正规方式)。

import re, os

def alter_3(file, old_str, new_str):
    # 方式3:新建个空白文件,把原文件内容和要修改的内容写到新文件中进行存储(使用正规方式)。
    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_3("test.conf", "c", "**")

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章