python如何获取文件当前位置和定位某个位置
作者:jiankang66 发布时间:2022-01-10 17:40:36
标签:python,文件当前位置,定位,位置
一、背景
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


猜你喜欢
- 1.列表元素删操作的方法列表的删操作指的是在列表中删除已存在的元素,列表中的元素被删除后,后面所有的元素依次往前移动一位,挂在被删除元素的索
- 最近的开发项目中使用了vue-cli 3.0,使用体验可以说非常棒了,模板更加制定化,配置更加简洁。以下总结下应用过程中的一些经验。1. 安
- 作为免费又高效的数据库,mysql基本是首选。良好的安全连接,自带查询解析、sql语句优化,使用读写锁(细化到行)、事物隔离和多版本并发控制
- 我想将一个二维数组横纵列转过来,我就不信只有我有这个需求,可是百度了好久,四海八荒都找遍了……后来证明还是大神说的google好用 ~ 第一
- 废话不多说了,直接上代码吧!#!/usr/bin/env python# coding=utf-8# 画一棵樱花import turtlei
- Python 变量类型变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什
- 求一个数的平方根函数sqrt(int num) ,在大多数语言中都提供实现。那么要求一个数的平方根,是怎么实现的呢?实际上求平方根的算法方法
- 目录一、常见的高阶函数1.1、filter1.2、map1.3、reduce高阶函数,英文叫 Higher Order function。一
- asp代理采集代码如下:<%Function ProxyPage(url) Set Retrieval&
- 1. 文件锁脚本启动前检查特定文件是否存在,不存在就启动并新建文件,脚本结束后删掉特定文件。通过文件的判断来确定脚本是否正在执行。方法实现也
- 目录一、🌕月亮二、🌕雪花月饼一、🌕月亮导入库matplotlib和numpy,作为工具直接用。from mpl_toolkits.mplot
- GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。1、概述“Group By”从字面意义上理解就是根据“By”指定的
- 一、截取子串-切片方法:字符串名[初始位置:结束位置:步长]str1 = 'abcdefg'print(str1[:]) #
- python 连接数据库操作, 方法如下:在本机的mysql 数据库中有一个名为yao的库,其中有一个名为user的表,表中的内容如图下面,
- 这次主要教的是如何通过Python 获取Windows系统下的所有的磁盘盘符,以列表的形式展示出来,获取磁盘号下的盘符包括能够获取到我们正在
- 本文实例讲述了Python图像滤波处理操作。分享给大家供大家参考,具体如下:在图像处理中,经常需要对图像进行平滑、锐化、边界增强等滤波处理。
- 本文实例讲述了Python使用Flask-SQLAlchemy连接数据库操作。分享给大家供大家参考,具体如下:需要安装flaskpip in
- 有时候我们要去别的接口取数据,可能因为网络原因偶尔失败,为了能自动重试,写了这么一个装饰器。这个是python2.7x 的版本,python
- 做前端也有几年时间了,不敢说能把他看地多透,但是多多少少还是有些自己的东西。下面以 Tudou.com 的首页为例,总结总结。就制作而言,我
- 本文实例讲述了JS实现不规则TAB选项卡效果代码。分享给大家供大家参考。具体如下:这是一款不规则TAB选项卡效果,将中规中矩的方角换成了不规