python3文件对象方法seek()心得

python3文件对象方法seek()心得

本文环境: Windows 10 专业版 64 位 + Thonny 3.2.6

概述

python3中文件对象的方法 seek() 用于移动文件读写指针到指定位置。

语法

file_object.seek(offset[, whence])

参数说明

file_object 是文件对象,通常是通过函数 open() 返回的。
offset 是一个整数,表示文件读写指针要从 whence 指定的位置移动的数量。
正数是从文件读写指针向文件尾部移动。负数从文件读写指针向文件头部移动。负数只能用于 b 字节模式打开的文件对象。
whence 是一个可选参数,默认值为 0,表示从文件开头开始计算 offset 偏移量 。
whence 的其他可选值有:
0:表示文件开头(默认值)。
1:表示当前位置。
2:表示文件结尾。

实例

实例环境:
e:\test\test-en.txt
test-en.txt 内容:
0123456789abcdeABCDE
test-en.txt 编码:utf-8
在这里插入图片描述

seek(0) seek(0,0) 移动指针到文件头

上机代码:

#  文件对象的方法 seek(0) 训练
# 使用 r+ 读写模式打开文件
file_object = open("test-en.txt","r+")
print("r+ 读写模式打开文件后,文件读写指针在文件头:",file_object.tell())
# 使用文件对象的方法 read() 读取文件内容
contents = file_object.read()
print("第1次 read() 文件内容后的结果:\n",contents)
print("read() 读取文件内容后,文件读写指针在文件末尾:",file_object.tell())
print("由于文件指针在文件末尾,所以无法再次读取出文件内容")
contents = file_object.read()
print("第2次 read() 文件内容后的结果:\n",contents)

print("使用文件对象的方法 seek(0) 把文件读写指针移动到文件头")
file_object.seek(0)
print("显示 file_object.seek(0) 后的文件读写指针的位置:",file_object.tell())
contents = file_object.read()
print("第3次把文件读写指针调整到文件头后,\nread() 文件内容的结果:\n",contents)

print("""seek(0) 是 seek(0,0) 省略了参数 whence ,whence 省略时默认值是0
seek(0,0) offset = 0 whence = 0
offset = 0 :文件读写指针从 whence 指定的位置向文件尾部移动的0字节。
whence = 0 : 文件读写指针移动到文件头。
""")

#关闭文件
file_object.close()

结果:

>>> %Run test.py
r+ 读写模式打开文件后,文件读写指针在文件头: 01次 read() 文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qslife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值