python第二次使用read()无法读取文件内容。文件操作的指针位置。read()和seed()

1 篇文章 0 订阅

假设现在有个文本文件对象,对象名是text,其中内容为“梧桐半死清霜后”,可供读写。

如下代码,尝试读取两次文件内容。

print("第一次读取:", text.read())
print("第二次读取:", text.read())

输出的内容只有第一次的read(),读到了内容。

原因是,随着read()的读取执行,文本的光标也随之移动到读取的最后一格,需要将光标向前移动,下一次read()才会读到光标后的内容。

使用seek()移动光标

seek()方法的基本语法格式:

file.seek(offset[, whence])

file:表示已经打开的对象。

offset:用于指定移动的字符个数,其具体位置与whence有关。

whence:用于指定从什么位置开始计算。值为0表示从文件头开始计算,值为1表示从当前位置开始计算,值为2表示从文件尾开始计算,默认值为0。

要使第二次读取有内容,代码如下:

print("第一次读取:", text.read())
# 移动文件指针至头部
text.seek(0,0)
print("第二次读取:", text.read())

 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值