python讀取指定位元組及位置的檔案內容

2021-06-04 19:39:50 字數 1097 閱讀 2400

現在有乙個xl.txt文件,內容如下:

aaaaaaaa

bbbbbbbb

cccccccc

dddddddd

可以通過open()函式來開啟檔案,比如:

>>> f = open("c:/users/jetway/desktop/xl.txt", "r")

可以利用tell()函式檢視在檔案中的當前位置,以位元組為單位,比如:

>>> f.tell()0l

這裡還沒對檔案做任何處理,所以在檔案的起始處,位置為0l

接下來就是通過seek()函式,來指定在檔案中的位置了。說明,seek()有兩個引數,其中第二個引數只有0,1,2三種,假設第乙個引數為x, 0表示從檔案開始處移動到檔案的x位元組處。比如:

>>> f.seek(8,0)

>>> f.tell()8l

>>> fs = f.read()

>>> fs

'bbbbbbbbccccccccdddddddd'

1表示移動到相對於當前位置x位元組的地方,比如現在是在第8個位元組處:

>>> f.seek(9,1)

>>> f.tell()

17l>>> fs = f.read()

>>> fs

'cccccccdddddddd'

2表示相對於檔案末尾的位置,比如:

>>> f = open("c:/users/jetway/desktop/xl.txt", "r")

>>> f.seek(-12, 2)

>>> f.tell()

20l>>> fs = f.read()

>>> fs

'ccccdddddddd'

通過seek()函式,我們可以方便的指定在檔案中的讀取位置,至於讀取的位元組數目麼就要靠read()函式了,只需要加入需要讀取的位元組數引數就可以了,比如,我要從第8個位元組開始讀取13個位元組:

>>> f = open("c:/users/jetway/desktop/xl.txt", "r")

>>> f.seek(8,0)

>>> fs = f.read(13)

>>> fs

'bbbbbbbbccccc'

python讀取指定位元組長度的文字

軟體版本 python 2.7.13 win 10 場景描述 1 使用python讀取指定長度的文字 2 使用python讀取某一範圍內的文字。python test.txt文字內包含的字串為 aaaaaaaabbbbbbbbccccccccdddddddd a,b,c,d均為8個 coding u...

python讀取指定位元組長度的文字

軟體版本 python 2.7.13 win 10 場景描述 1 使用python讀取指定長度的文字 2 使用python讀取某一範圍內的文字。python test.txt文字內包含的字串為 aaaaaaaabbbbbbbbccccccccdddddddd a,b,c,d均為8個 coding u...

python讀取指定位元組長度的文字

軟體版本 python 2.7.13 win 10 場景描述 1 使用python讀取指定長度的文字 2 使用python讀取某一範圍內的文字。python test.txt文字內包含的字串為 aaaaaaaabbbbbbbbccccccccdddddddd a,b,c,d均為8個 coding u...