python文件seek函数_Python seek函数
Python seek函數教程
在
所以,每次打開文件進行讀取時,總是從文件的開始處開始讀取,同樣,每次打開文件進行寫入時,總是從文件的開始處開始寫入,但 Python 為我們提供了 seek
seek函數詳解
語法
n = fileObject.seek(offset[, whence])
參數
參數
描述
n
新的文件位置。
fileObject
文件對象。
offset
偏移量。
whence
可選參數,默認為 0。表示給 offset 參數一個定義,表示要從哪個位置開始偏移。
0 :代表從文件開頭開始偏移。
1 : 代表從當前位置開始偏移。
2 : 代表從文件末尾開始偏移。
返回值
如果操作成功,則返回新的文件位置,如果操作失敗,則函數返回 -1。
說明
fileObject 表示已經打開的文件對象,offset 表示開始的偏移量,也就是代表需要移動偏移的字節數。
whence 是可選
案例
使用seek函數移動文件指針
使用 seek 函數移動文件指針
print("嗨客網(www.haicoder.net)")
file = open("C:/haicoder.txt", "w+")
file.write("Hello HaiCoder")
file.write("Hello HaiCoder")
print("file write success")
fileContent = file.read()
print("file content =", fileContent)
file.seek(0)
fileContent = file.read()
print("file content =", fileContent)
file.close()
程序運行后,控制臺輸出如下:
我們首先打開文件,然后連續兩次寫入文件,寫入之后,使用打開文件返回的 file 對象開始讀文件,此時,我們發現,讀取的內容為空。
因為,此時的 file 指針因為寫文件的原因以及被移動到了文件尾,所以此時讀取文件的內容為空,接著,我們使用 seek 函數,將文件指針移動到文件開始。
此時,再次讀取文件,我們發現讀取到了我們寫入的文件內容,最后,調用
使用seek函數移動文件指針
使用 seek 函數移動文件指針
print("嗨客網(www.haicoder.net)")
file = open("C:/haicoder.txt", "w+")
file.write("Hello HaiCoder,I am study python from haicoder")
print("file write success")
fileContent = file.read()
print("file content =", fileContent)
file.seek(0)
fileContent = file.read()
print("file content =", fileContent)
file.seek(0)
file.seek(0, 2)
fileContent = file.read()
print("file content =", fileContent)
file.seek(6)
file.seek(0, 1)
fileContent = file.read()
print("file content =", fileContent)
file.close()
程序運行后,控制臺輸出如下:
我們首先打開文件,然后寫入文件,寫入之后,使用打開文件返回的 file 對象開始讀文件,此時,我們發現,讀取的內容為空。
因為,此時的 file 指針因為寫文件的原因以及被移動到了文件尾,所以此時讀取文件的內容為空,接著,我們使用 seek 函數,將文件指針移動到文件開始。
此時,再次讀取文件,我們發現讀取到了我們寫入的文件內容,接著,我們再次將文件指針移動到文件開始,再次使用 seek 函數,并且 whence 參數傳遞 2,表明從文件尾開始偏移 0,即移動到文件尾,所以,此時再次讀取,還是讀的內容為空。
最后,我們將指針移動到第六個字符處,并再次將 whence 參數傳遞 1,表明從文件指針當前位置開始偏移 0,此時再次讀取,讀取到了文件從位置 6 開始之后的所有內容。
Python seek函數總結
Python 為我們提供了 seek 函數,該函數可以用來移動文件指針。Python seek 函數語法:
n = fileObject.seek(offset[, whence])
總結
以上是生活随笔為你收集整理的python文件seek函数_Python seek函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oppo reno5和oppo reno
- 下一篇: 幻八角2~6階的首三名拓荒者:彭保旺鐘明