軟件版本
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讀取指定字節長度的文本方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
