python如何获取文件当前位置和定位某个位置
作者:jiankang66 时间:2022-01-10 17:40:36
一、背景
Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。
Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。
下面我们来介绍一下python的文件指针定位相关知识。
二、获取当前读写位置
在读写文件的过程中,如果想知道当前文件位置指针的位置,可以通过调用tell()方法来获取。
tell()方法返回文件的当前位置,即文件位置指针当前位置。
其语法格式如下:
文件对象名.tell()
例:
使用tell()方法获取文件当前的读写位置。
with open('testfile.txt','r') as file:#以只读方式打开名为“testfile.txt”的文件
line = file.read(8)#读取前8个字节
print(line)#输出前8个字节
p = file.tell()#获取指针当前位置
print('当前位置:',p)#输出当前位置
line = file.read(4)#继续读取4个字节
print(line)#输出读取到的数据
p = file.tell()#获取指针当前位置
print('当前位置:',p) #输出当前位置
结果如下。
三、定位到某个位置
如果在读写文件的过程中,需要从指定的位置开始读写操作,就可以使用seek()方法实现。
seek()方法用于移动文件位置指针到指定位置
其语法格式如下:
文件对象名.seek(offset[,whence])
例:
创建名为“seek.txt“的文件,输入“This is a test!”并存放进文件中,读取单词“test”并输出到终端。
filename = input('请输入新建的文件名:')#输入文件名
with open(filename,'w+') as file:#新建文件并以读写方式打开
file.write('This is a test!')#将字符串输入到文件
file.seek(10)#指针移到从头开始的第10个字符处
con = file.read(4)#读取4个字符给con
print(con)#输出
结果如下。
以文本文件格式打开文件时,seek()方法中的whence参数取值只能是0,即只允许从文件开始位置计算偏移量。
若想从当前位置或文件末尾位置计算偏移量,需要使用“b”模式(二进制格式)打开文件。
例:
读取“seek.txt”文件中倒数第2个字符。
with open('seek.txt','rb') as file:#新建文件并以读写方式打开
file.seek(-2,2)#将文件位置指针定位到倒数第2个字符处
con = file.read(1)#读取1个字符给con
print(con)#输出
结果如下。
四、总结
来源:https://blog.csdn.net/jiankang66/article/details/126002418
标签:python,文件当前位置,定位,位置
0
投稿
猜你喜欢
pycharm配置QtDesigner的超详细方法
2022-09-07 13:35:01
Python 限制线程的最大数量的方法(Semaphore)
2022-03-02 06:24:09
拒绝盗图!教你怎么用python给图片加水印
2022-05-29 21:42:51
python实现桌面壁纸切换功能
2023-05-26 04:38:49
python使用requests实现发送带文件请求功能
2023-11-03 14:23:13
浅谈Python中的zip()与*zip()函数详解
2021-01-26 13:28:49
Golang通脉之数据类型详情
2023-07-14 05:37:03
Python+matplotlib实现堆叠图的绘制
2023-07-21 17:38:35
使用GitHub和Python实现持续部署的方法
2022-07-16 22:54:35
PHP三层结构(上) 简单三层结构
2023-06-20 06:36:07
Python实现的计算器功能示例
2023-02-16 22:25:30
Python基础 while循环与break、continue关键字
2023-11-19 03:41:42
mysql分表的3种方法
2011-01-29 16:50:00
在pytorch 中计算精度、回归率、F1 score等指标的实例
2022-08-10 06:28:18
python编程的核心知识点总结
2023-09-26 21:24:24
Python 阶乘详解
2022-01-16 13:56:00
Python中模块pymysql查询结果后如何获取字段列表
2023-07-23 18:52:54
Python实现的用户登录系统功能示例
2021-07-02 03:38:18
Python中的is和==比较两个对象的两种方法
2021-09-15 21:23:14
python自动化测试selenium执行js脚本实现示例
2023-10-23 06:41:58