Python3 File seek() 方法

Python3 File(檔) 方法 Python3 File(檔) 方法


概述

seek() 方法用於移動檔讀取指針到指定位置。

語法

seek() 方法語法如下:

fileObject.seek(offset[, whence])

參數

  • offset -- 開始的偏移量,也就是代表需要移動偏移的位元組數,如果是負數表示從倒數第幾位開始。

  • whence:可選,默認值為 0。給 offset 定義一個參數,表示要從哪個位置開始偏移;0 代表從檔開頭開始算起,1 代表從當前位置開始算起,2 代表從檔末尾算起。

返回值

如果操作成功,則返回新的檔位置,如果操作失敗,則函數返回 -1。

實例

以下實例演示了 seek() 方法的使用:

實例

>>> f = open('workfile', 'rb+')
>>> f.write(b'0123456789abcdef')
16
>>> f.seek(5)      # 移動到檔的第六個位元組
5
>>> f.read(1)
b'5'
>>> f.seek(-3, 2)  # 移動到檔倒數第三個位元組
13
>>> f.read(1)
b'd'

檔 zaixian.txt 的內容如下:

1:www.xuhuhu.com
2:www.xuhuhu.com
3:www.xuhuhu.com
4:www.xuhuhu.com
5:www.xuhuhu.com

迴圈讀取檔的內容:

實例

#!/usr/bin/python3 # 打開檔 fo = open("zaixian.txt", "r+") print ("檔案名為: ", fo.name) line = fo.readline() print ("讀取的數據為: %s" % (line)) # 重新設置檔讀取指針到開頭 fo.seek(0, 0) line = fo.readline() print ("讀取的數據為: %s" % (line)) # 關閉檔 fo.close()

以上實例輸出結果為:

檔案名為:  zaixian.txt
讀取的數據為: 1:www.xuhuhu.com

讀取的數據為: 1:www.xuhuhu.com


Python3 File(檔) 方法 Python3 File(檔) 方法