1. 程式人生 > 程式設計 >python讀取指定位元組長度的文字方法

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讀取指定位元組長度的文字方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。