爷傲奈我何? 发表于 2020-7-7 23:37:55

python中打开文件用.read()会不从文件第一个字符读取

问题:使用read()函数读取文件,不从第一个字符读起,求教
文件内容:小甲鱼,你好,跟你一起学习真好

代码如下:
f = open('G:/test.txt/read.txt', encoding='UTF-8')
print(f.tell())
f.read(2)
print(f.read(2))#这本应该输出文本“小甲”,为啥输出“鱼,”,并不是从第一个字符开始读取?
print(f.tell())

输出结果:
0
鱼,
12

Twilight6 发表于 2020-7-7 23:41:06

本帖最后由 Twilight6 于 2020-7-8 09:26 编辑



f.read(2)
print(f.read(2))

因为你是先 f.read(2) 然后在 print(f.read(2))

当你执行 f.read(2) 的时候 文件指针已经向后移动两个字符了,也就是已经读取了 "小甲"

而当你再次 print(f.read(2)) 的时候 文件指针是从 鱼 开始的,所以这次打印是 "鱼,"


爷傲奈我何? 发表于 2020-7-7 23:44:04

{:10_256:}感谢鱼友,搞懂了
页: [1]
查看完整版本: python中打开文件用.read()会不从文件第一个字符读取