python读取指定字节长度的文本方法


Posted in Python onAugust 27, 2019

软件版本

Python 2.7.13; Win 10

场景描述

1、使用python读取指定长度的文本;

2、使用python读取某一范围内的文本。

Python代码

test.txt文本内包含的字符串为“AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD”,A,B,C,D均为8个

# -*- coding:utf-8 -*-
text_file = r"test.txt"
# open()
f = open(text_file, "r")
# 以文件起始位置作为相对位置,偏移8个长度
f.seek(8, 0)
# 输出当前指针偏移量
pos = f.tell()
print pos
# 读取8个字节长度的文本,范围为[8,16)
text_to_number = f.read(8)
print text_to_number
# 输出当前指针偏移量,可以观测到read()也会造成文件指针偏移
pos = f.tell()
print pos
# 以当前文件指针作为相对位置,偏移8个长度
f.seek(8, 1)
# 读取8个字节长度的文本,范围为[24,32)
text_to_all = f.read(8)
print text_to_all

f.close()

输出:

8
BBBBBBBB
16
DDDDDDDD

函数说明

这段代码涉及到文件操作的几个方法。

1、open()方法

用来打开一个文件。这是对文件操作的第一步。open()方法的语法如下:open(name[, mode[,buffering]])。name参数是open方法的唯一强制参数,用来标识要打开的文件名。mode是文件打开的模式,通常有三种:r为读模式打开,w为写模式打开,a为追加模式打开。

2、seek()方法

用它设置当前文件读/写指针的偏移。seek()方法的语法如下:fileObject.seek(offset[, whence])。offset参数指明偏移量,第二个参数指出第一个参数偏移基准是哪里:0 表示移动到一个绝对位置 (从文件开始算起),1 表示移到一个相对位置 (从当前位置算起),还有 2 表示对于文件尾的一个相对位置。”

3、tell()方法

返回当前文件指针的位置。

4、read()方法

读取文件内容的方法。读取文件内容的另外两个方法是readline和readlines。

readline()每次读取一行,当前位置移到下一行;

readlines()读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素;

read(size)从文件当前位置起读取size个字节(如果文件结束,就读取到文件结束为止),如果size是负值或省略,读取到文件结束为止,返回结果是一个字符串。

5、close()方法

操作完文件,一定要关闭文件。关闭文件就是用这个close方法。

以上这篇python读取指定字节长度的文本方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python网络编程学习笔记(九):数据库客户端 DB-API
Jun 09 Python
pyenv命令管理多个Python版本
Mar 26 Python
python如何定义带参数的装饰器
Mar 20 Python
python+opencv+caffe+摄像头做目标检测的实例代码
Aug 03 Python
python实现复制大量文件功能
Aug 31 Python
关于python中plt.hist参数的使用详解
Nov 28 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
Feb 27 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
Jun 01 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 Python
Pycharm制作搞怪弹窗的实现代码
Feb 19 Python
python非标准时间的转换
Jul 25 Python
python多线程方法详解
Jan 18 Python
Django中的cookie和session
Aug 27 #Python
Python3之字节串bytes与字节数组bytearray的使用详解
Aug 27 #Python
Python如何应用cx_Oracle获取oracle中的clob字段问题
Aug 27 #Python
在Python中获取操作系统的进程信息
Aug 27 #Python
python3 下载网络图片代码实例
Aug 27 #Python
Python (Win)readline和tab补全的安装方法
Aug 27 #Python
python中字典按键或键值排序的实现代码
Aug 27 #Python
You might like
php扩展ZF――Validate扩展
2008/01/10 PHP
PHP编写RESTful接口的方法
2016/02/21 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
2016/05/06 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
详解关于php的xdebug配置(编辑器vscode)
2019/01/29 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
Jquery提交表单 Form.js官方插件介绍
2012/03/01 Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
2013/11/25 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
Javascript中的回调函数和匿名函数的回调示例介绍
2014/05/12 Javascript
jquery实现人性化的有选择性禁用鼠标右键
2014/06/30 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
Javascript控制input输入时间格式的方法
2015/01/28 Javascript
JavaScript原生对象之String对象的属性和方法详解
2015/03/13 Javascript
node.js利用redis数据库缓存数据的方法
2017/03/01 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
2017/03/30 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
2018/03/28 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
mpvue全局引入sass文件的方法步骤
2019/03/06 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
python3模块smtplib实现发送邮件功能
2018/05/22 Python
python设置随机种子实例讲解
2019/09/12 Python
解决Pytorch训练过程中loss不下降的问题
2020/01/02 Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
2020/03/23 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
文秘专业个人求职信
2013/12/22 职场文书
党员批评与自我批评
2014/02/12 职场文书
人力管理专业毕业生求职信
2014/02/27 职场文书
企业整改报告范文
2014/11/08 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
基于redis+lua进行限流的方法
2022/07/23 Redis