首页技术文章正文

Python使用哪种方法获取和修改文件读写位置?

更新时间:2021-03-18 来源:黑马程序员 浏览量:

1577370495235_学IT就到黑马程序员.gif

在文件的一次打开与关闭之间进行的读写操作都是连续的,程序总是从上次读写的位置继续向下进行读写操作。实际上,每个文件对象都有一个称为“文件读写位置”的属性,该属性用于记录文件当前读写的位置。

Python提供用于获取文件读写位置以及修改文件读写位置的方法tell()方法与seek()方法。下面对这两个方法的使用进行介绍。

1.tell()方法

tell()方法用于获取当前文件读写的位置,其语法格式如下:

txt_data.tell()
以文件txt_file.txt中的内容为例,使用tell()方法获取当前文件读取的位置,示例代码如下:
file = open('txt_file.txt', mode='r', encoding='utf-8')
print(file.read(7))   # 读取7个字节
print(file.tell())   # 输出文件读取位置

上述代码使用read()方法读取7个字节的数据,然后通过tell()方法查看当前文件的读写位置。

运行代码,结果如下所示:

Life is
7

2. seek()方法

seek()方法用于设置当前文件读写位置,其语法格式如下:

txt_data.seek(offset, from)

1616060295997_定位读取文件.jpg

seek()方法的参数offset表示偏移量,即读写位置需要移动的字节数;from参数用于指定文件的读写位置,该参数的取值有:0、1、2,它们代表的含义分别如下:

  • 0:表示在开始位置读写;

  • 1:表示在当前位置读写;

  • 2:表示在末尾位置读写。

以读取文件txt_file.txt的内容为例,使用seek()方法修改读写位置,示例代码如下。

file = open('txt_file.txt', mode='r',encoding='utf-8')
file.seek(15, 0)
print(file.read())
file.close()

上述代码使用seek()方法将文件读取位置移动至开始位置偏移15个字节,然后使用read()方法读取txt_file.txt中的数据。

运行代码,结果如下所示:

use Python.
Hello Python.Hello world

python程序开发





猜你喜欢:

Python web开发框架Zope有什么优势?

【Python面经题】爬虫数据为什么选择Mongodb存储?

Python项目实战视频教程:美多商城开发【黑马程序员】

python常见异常类型介绍【黑马程序员】

黑马程序员Python+数据分析课程

分享到:
在线咨询 我要报名
和我们在线交谈!