相关文章推荐
阳光的楼房  ·  Java-Collectors.groupi ...·  3 天前    · 
豪气的电脑桌  ·  wpf start animation ...·  10 月前    · 
with open(r'xxx', 'w+', encoding='utf-8') as f:
	print(f.readlines())

本来是想读取并修改一个文件,想一边读取一边写入,发现读取出来是空。
原因:'w+'表示覆盖写入,这时f表示的是新建的那个文件,还没有写入任何内容,自然是空,这时不论是f.readlines()还是f.readline()都是空。

with open(r'xxx', 'r', encoding='utf-8') as f:
	print(f.readlines())

想要修改目标文件中的部分内容

with open(r'xxx', 'r', encoding='utf-8') as f:
	lines = f.readlines()
	for i, line in enumerate(lines):
		lines[i] = line.replace('要修改的局部内容','修改后的局部内容')
with open(r'xxx', 'w+', encoding='utf-8') as w:
	w.writelines(lines)

with open相关参数说明

错误代码with open(r'xxx', 'w+', encoding='utf-8') as f: print(f.readlines())本来是想读取并修改一个文件,想一边读取一边写入,发现读取出来是空。原因:'w+'表示覆盖写入,这时f表示的是新建的那个文件,还没有写入任何内容,自然是空,这时不论是f.readlines()还是f.readline()都是空。正确代码with open(r'xxx', 'r', encoding='utf-8') as f: print(f.read
我在使用readlines()方法读取一个1.8万行的txt文件时,发现得到的结果却是的, with open('THUOCL_medical.txt','r',encoding='utf-8') as file,\ open('THUOCL_new.txt','w',encoding='utf-8') as file2: lines = file.readlines() 也就是debug的时候,lines是一个列表,一开始我还以为是内存不够,后来搜索了一下相关的文章,感觉并不是这个问
众所周知在python中读取文件常用的三种方法:read(),readline(),readlines(),今天看项目是又忘记他们的区别了。以前看书的时候觉得这东西很简单,一眼扫过,待到用时却也只知道有这么几个方法,不懂得它的原理与用法。也许吧,没有永远的记忆,况且根本没有用心去记它。话不多说,来一起看看详细的介绍: 假设a.txt 一、read([size])方法 read([size])...
这个函数是把一个文档当成一个字符串(结尾有字符串)返回。也就是一个文档存储在一个字符串对象中,如果文件很大,就很耗内存。 2.readlines(),是把一个文档的每一行(包含行前的格,行末加一个\n),作为列表的一个元素,存储在一个list中。每一个行作为list的一个元素。 3.readline(),类似于readlines(),不过它每次只读取文档的一行。以后需要逐步循环(一般用whicl