Python清空文件并替换内容的实例

yipeiwu_com5年前Python基础

有个文本文件,需要替换里面的一个词,用python来完成,我是这样写的:

def modify_text():
 with open('test.txt', "r+") as f:
  read_data = f.read()
  f.truncate() #清空文件
  f.write(read_data.replace('apple', 'android'))

执行上面这个函数,它会把内容追加进去,而不是替换。

f.truncate()没起作用,应该怎么写才可以呢?

需要加上f.seek(0),把文件定位到position 0,没有这句的话,文件是定位到数据最后,truncate也是从这里删除,所以感觉就是没起作用。

def modify_text():
 with open('test.txt', "r+") as f:
  read_data = f.read()
  f.seek(0)
  f.truncate() #清空文件
  f.write(read_data.replace('apple', 'android'))

以上这篇Python清空文件并替换内容的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python3之文件读写操作的实例讲解

文件操作的步骤: 打开文件 -> 操作文件 -> 关闭文件 切记:最后要关闭文件(否则可能会有意想不到的结果) 打开文件 文件句柄 = open(‘文件路径', ‘模式')...

浅谈python中的getattr函数 hasattr函数

hasattr(object, name) 作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的...

Django之Mode的外键自关联和引用未定义的Model方法

Django Model的外键自关联 在django的model定义中,有时需要某个Field引用当前定义的Model,比如一个部门(Department)的Model,它有一个字段是上...

python3学习笔记之多进程分布式小例子

python3学习笔记之多进程分布式小例子

最近一直跟着廖大在学Python,关于分布式进程的小例子挺有趣的,这里做个记录。 分布式进程 Python的multiprocessing模块不但支持多进程,其中managers子模块还...

8种用Python实现线性回归的方法对比详解

8种用Python实现线性回归的方法对比详解

前言 说到如何用Python执行线性回归,大部分人会立刻想到用sklearn的linear_model,但事实是,Python至少有8种执行线性回归的方法,sklearn并不是最高效的。...