python3用read()函数读取文件两次,就变成空字符串了

如何让read()函数继续读取全文?如何让readline()回到开头开始读取。

python在读取文件的时候是根据光标位置来读取的。读一行以后光标位置到了下一行。再来个read又到了下一行。

想要重新从头开始读的话用f.seek(0)

将光标位置放到最前面。这样再f.read()就是第一行的内容

还有个方法是f.tell()

告诉你当前光标的位置。你可以把文件都读完了以后f.tell()一下看看光标位置

然后再f.seek(0)  

再f.tell()一下看看光标位置

with open() as f跟你截图用的差不多,只不过这种方式不用f.close(),会自动关闭文件句柄。不过也可以手动关闭文件句柄

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-01
再次read之前 f.seek(0)本回答被提问者采纳
第2个回答  2018-05-31

相似回答