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

yipeiwu_com5年前Python基础

软件版本

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实现旋转和水平翻转的方法

如下所示: # coding=utf-8 import glob import os from PIL import Image def rotate_270(imgae):...

学习python (1)

先推荐一个学习python的好网址简明 Python 教程 Swaroop, C. H. 著 沈洁元  译在线教程的网址:http://www.woodpecker.org.cn:...

教你如何将 Sublime 3 打造成 Python/Django IDE开发利器

教你如何将 Sublime 3 打造成 Python/Django IDE开发利器

1. 安装 Sublime Text 3 虽然现在的 Sublime 3 还处于 beta 阶段, 但已经非常稳定了, 而且速度比 Sublime 2 得到了增强. Sublime 3...

Python中那些 Pythonic的写法详解

前言 Martin(Bob大叔)曾在《代码整洁之道》一书打趣地说:当你的代码在做 Code Review 时,审查者要是愤怒地吼道: “What the fuck is this shi...

Python使用urllib2获取网络资源实例讲解

这是具有利用不同协议获取URLs的能力,他同样提供了一个比较复杂的接口来处理一般情况,例如:基础验证,cookies,代理和其他。它们通过handlers和openers的对象提供。ur...