python文件处理--文件的修改

平时我们所使用的word,ppt 等的文档都是先从硬盘里面加载到内存里才显示,所以如果文件比较大的话我们会发现加载的速度会有些慢,world中加载完后我们可以进行任意的修改,因为我们是在内存之中修改后保存到硬盘的,但是硬盘里面的东西是不能随意修改的,因为每一个存储的对象都有一个唯一的地址。

我们在修改内容的方式可以采用牺牲硬盘或是牺牲内存两种方式来实现,以上world,ppt方式就是以牺牲内存的方式实现修改,牺牲硬盘是指新建一个空间,然后程序到原有的内容去循环然后找到需要修改的内容,替换之后存储到新的空间里面。

一、牺牲硬盘的形式修改:
#文件的修改
import os
f_file = 'C:/Users/jeep-peng zhang/Desktop/22.txt'
f_new_file ='%s.new.txt' %f_file#创建新的地方
f = open(f_file,'r',encoding='gbk')
f_new = open(f_new_file,'w',encoding='gbk')
old_str ="计算机二级"
new_str = "洛天诚巨白"

for line in f:
    if old_str in line:#判断是否在这行
        line = line.replace(old_str,new_str)
    f_new.write(line)
f.close()
f_new.close()
os.rename(f_new_file,f_file)#window路径下会出错需修改路径不显示模式

 二、牺牲内存形式修改:

file = 'C:/Users/jeep-peng zhang/Desktop/22.txt'
f = open(file,'r+',encoding='gbk')
date = f.read() #加载到内存里
f.seek(0)#回到最开始
new_date = date.replace('计算机二级','我是买包888的小行家')#替换
f.write(new_date)

后面可以使用f.truncate()从当前位置截断。

 
 
 
 


转载于:https://www.cnblogs.com/jeepzp/p/8228882.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值