以占用内存的方式修改文件

待修改的文件 word1.txt,文件内容如下:

p1.jpg

现在要将文中的“汪淼”修改为“WM”,代码如下:

#!-*-coding:utf-8-*-
old_str = '汪淼'
new_str = 'WM'
f1 = open('word1.txt','r+',encoding="utf-8")  # 以读写方式打开,可读可写
data = f1.read()  # 读取文件内容
print(f1.tell()) # 4574 tell() 方法返回文件的当前位置,即文件指针当前位置。
f1.seek(0) # seek() 方法用于移动文件读取指针到指定位置。
for i in data: # 循环读取
    if old_str in data:
        data=data.replace(old_str,new_str)  # 用新字符串替换旧字符串
print(data)  # 打印修改后的内容
f1.write(data) # 向文件中写入内容(data),默认是utf-8
f1.truncate()  # 用于截断文件,如果指定了可选参数 size,则表示截断文件为 size 个字符。 如果没有指定 size,
则从当前位置起截断;截断之后 size 后面的所有字符被删除。
f1.close()  # 关闭文件

更多Python知识,请关注:云海天python教程网!!

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » python文件如何修改