file.seek(offset[, whence])

本页内容

Python3 File seek() 方法

Python3 File(文件) 方法

概述

seek() 方法用于移动文件读取指针到指定位置。

语法

seek() 方法语法如下:


示例

fileObject.seek(offset[, whence])

参数

  • offset -- 开始的偏移量,也就是代表需要移动偏移的字节数,如果是负数表示从倒数第几位开始。
  • whence:可选,默认值为 0。给 offset 定义一个参数,表示要从哪个位置开始偏移;0 代表从文件开头开始算起,1 代表从当前位置开始算起,2 代表从文件末尾算起。

返回值

如果操作成功,则返回新的文件位置,如果操作失败,则函数返回 -1。

==

以下实例演示了 seek() 方法的使用:


示例

>>> f = open('workfile', 'rb+')

>>> f.write(b'0123456789abcdef')

16

>>> f.seek(5)      # 移动到文件的第六个字节

5

>>> f.read(1)

b'5'

>>> f.seek(-3, 2)  # 移动到文件倒数第三个字节

13

>>> f.read(1)

b'd'

文件 xiaobai.txt 的内容如下:


示例

1:www.xiaobai.wang
2:www.xiaobai.wang
3:www.xiaobai.wang
4:www.xiaobai.wang
5:www.xiaobai.wang

循环读取文件的内容:


示例

#!/usr/bin/python3

# 打开文件
fo = open("xiaobai.txt", "r+")
print ("文件名为: ", fo.name)

line = fo.readline()
print ("读取的数据为: %s" % (line))

# 重新设置文件读取指针到开头
fo.seek(0, 0)
line = fo.readline()
print ("读取的数据为: %s" % (line))

# 关闭文件
fo.close()

以上实例输出结果为:


示例

文件名为:  xiaobai.txt
读取的数据为: 1:www.xiaobai.wang

读取的数据为: 1:www.xiaobai.wang

Python3 File(文件) 方法

此页面最后编辑于2022年8月17日 (星期三) 21:08。