有个文本文件,需要替换里面的一个词,用python来完成,我是这样写的:
1
2
3
4
5
|
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也是从这里删除,所以感觉就是没起作用。
1
2
3
4
5
6
|
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清空文件并替换内容的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。