日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python的tell和seek_python文件对象的seek和tell

發(fā)布時間:2025/3/20 python 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python的tell和seek_python文件对象的seek和tell 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

打開一個文件,讀取內(nèi)容,是很常見的操作。不過有的時候我們還需要反復(fù)讀取文件中的內(nèi)容,如果多次打開文件讀取再多次關(guān)閉,顯然不是特別好的操作,我們可以借助python文件對象的seek和tell函數(shù),來實現(xiàn)反復(fù)的讀取文件內(nèi)容,最后再關(guān)閉文件。

文件對象的tell函數(shù)

先說tell函數(shù),這個簡單,就是告訴我們當(dāng)前文件讀取指針處于文件的什么位置。tell函數(shù)返回的位置,以byte計數(shù):

>>> f = open('1.txt')

>>> f.tell()

0

>>> f.read(1)

'#'

>>> f.tell()

1

>>> f.read(24)

' GTR2SP2L A0A2 table\n# g'

>>> f.tell()

25

打開文件后,tell返回的位置是0;讀取一個字符,tell就返回1。因此,python文件對象的tell函數(shù),返回的位置就是已經(jīng)去讀的最后一個byte,下次再read,就是從這個位置往后開始算。

文件對象的seek函數(shù)

seek函數(shù)是用來重新定位讀取文件的指針位置。

>>> f.close()

>>> f = open('1.txt')

>>> f.read(48)

'# GTR2SP2L A0A2 table\n# generating time: 17:00:0'

>>> f.tell()

48

>>> f.seek(0)

0

>>> f.read(48)

'# GTR2SP2L A0A2 table\n# generating time: 17:00:0'

以上代碼,中間那個f.seek(0),將讀取文件的指針,重新定位到最開始的位置,因此兩次f.read(48),得到的內(nèi)容是一樣的。

seek含有一個參數(shù),用來確定參考位置,默認(rèn)是0,表示從文件頭開始的絕對位置,1表示以當(dāng)前位置為參考,2表示從文件末尾開始。不過這個參數(shù),我自己在測試的時候,始終有問題,因此就不詳細(xì)介紹了。

-- EOF --

總結(jié)

以上是生活随笔為你收集整理的python的tell和seek_python文件对象的seek和tell的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。