Python语言基础
Python语言进阶
Python数据结构

Python File seek() 方法

搞懂Python File seek() 方法的用法

概述

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'
文件 lidihuo.txt 的内容如下:
1、www.lidihuo.com
2、www.lidihuo.com
3、www.lidihuo.com
4、www.lidihuo.com
5、www.lidihuo.com
循环读取文件的内容:
# 打开文件
fo = open("lidihuo.txt", "r+")
print ("文件名为: ", fo.name)
line = fo.readline()
print ("读取的数据为: %s" % (line))
# 重新设置文件读取指针到开头
fo.seek(0, 0)
line = fo.readline()
print ("读取的数据为: %s" % (line))
# 关闭文件
fo.close()
以上实例输出结果为:
文件名为: lidihuo.txt
读取的数据为: 1、www.lidihuo.com
读取的数据为: 1、www.lidihuo.com

Python file更多操作说明

file操作方法
file.close()
关闭文件
file.flush()
刷新文件内部缓冲
file.fileno()
返回一个整型的文件描述符
file.isatty()
判断文件是否连接到终端
file.next()
返回文件下一行。
file.read([size])
从文件读取指定的字节数
file.readline([size])
读取整行,包括"\n"字符。
file.readlines([sizeint])
读取所有行并返回列表
file.seek(offset[, whence])
读取指针到指定位置。
file.tell()
返回文件当前位置。
file.truncate([size])
从文件首字符截断size字符
file.write(str)
将字符串写入文件返回符长度。
file.writelines(sequence)
向文件写入一个序列字符串列表
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4