Python中如何在追加模式(a+)下正确读取并打印文件内容?
问题解答
当你用a+模式打开文件时,文件指针默认会定位到文件末尾,所以直接调用f.read()会从末尾开始读取,自然没有内容输出。要解决这个问题,只需要在读取前将文件指针移到文件开头即可,用seek()方法实现:
with open('first.txt','a+') as f: f.seek(0) # 将文件指针移动到文件起始位置 print(f.read())
补充说明:
a+模式确实支持读写,但打开后指针位置在末尾,写入会追加到末尾,读取前必须手动调整指针位置- 如果在读取后还要写入内容,无需额外操作指针,
a+模式下写入会自动将指针移回末尾,不会覆盖原有内容
内容的提问来源于stack exchange,提问作者Sanjay
相关产品推荐
相关产品推荐

