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

作者:流风回雪1963 时间:2022-04-17 10:42:45 

软件版本

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方法。

来源:https://blog.csdn.net/zwl1584671413/article/details/79272417

标签:python,读取,字节,文本
0
投稿

猜你喜欢

  • css网页下拉菜单制作方法(3):样式修饰

    2007-02-03 11:39:00
  • 如何用python写一个简单的词法分析器

    2022-08-02 00:11:11
  • tensorflow之自定义神经网络层实例

    2022-05-26 07:05:27
  • 跟我学习javascript的异步脚本加载

    2024-04-17 09:59:44
  • 一文详解MySQL主从同步原理

    2024-01-24 03:00:59
  • Python-OpenCV教程之图像的位运算详解

    2022-10-17 23:44:43
  • Python日期时间Time模块实例详解

    2023-11-07 07:26:34
  • python 统计list中各个元素出现的次数的几种方法

    2022-12-09 10:04:01
  • PHP实现PDF转图片的方法详解

    2023-05-26 19:59:51
  • 有啊在设计上相对淘宝的优势

    2009-05-22 12:28:00
  • 成功的用户界面的八个特性[译]

    2009-04-20 20:36:00
  • vue实现选择商品规格功能

    2024-05-13 09:37:55
  • Python中pygame的mouse鼠标事件用法实例

    2021-02-09 12:21:41
  • Vue elementUI 自定义表单模板组件功能实现

    2023-07-02 16:37:46
  • MySQL中ROUND函数进行四舍五入操作陷阱分析

    2024-01-15 04:02:04
  • python复制列表时[:]和[::]之间有什么区别

    2021-08-15 01:22:05
  • python中的__init__ 、__new__、__call__小结

    2021-07-19 20:10:38
  • MySQL之主键索引排序失效问题

    2024-01-19 10:38:53
  • 一文带你了解MySQL中触发器的操作

    2024-01-13 13:22:11
  • 关于PowerDesigner初体验的使用介绍

    2024-01-13 04:15:25
  • asp之家 网络编程 m.aspxhome.com