1. 程式人生 > >seek()方法的使用

seek()方法的使用

sheng aaa pla () 有時 lose ans adding ati

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

file.seek()方法標準格式是:file.seek(offset,whence)

offset:開始的偏移量,也就是代表需要移動偏移的字節數

whence:給offset參數一個定義,表示要從哪個位置開始偏移;0代表從文件開頭開始算起,1代表從當前位置開始算起,2代表從文件末尾算起。whence值為空沒設置時會默認為0。

例子:

>>> f=open("aaa.txt","w")     #以只寫的形式打開一個叫做aaa.txt的文件
>>> f.write("my name is liuxiang,i am come frome china
") #寫入內容 41 >>> f.close() #關閉文件 >>> f=open("aaa.txt","r") #以只讀打開文件 >>> f.read() #讀取內容 my name is liuxiang,i am come frome china >>> f.seek(3,0) #“0”代表從文件開頭開始偏移,偏移3個單位 >>> f.read(5) #從偏移之後的指針所指的位置(即“n”)開始讀取5個字符 name >>> f.tell() #
顯示現在指針指在哪個位置(即“i”的位置) 8 >>> f.readline() #讀取這一行剩下的內容 is liuxiang,i am come frome china >>> f.seek(0,2) #“2”代表從末尾算起,“0”代表偏移0個單位 41 >>> f.read() ‘‘ #因為是從末尾算起,內容已結束。所以讀取內容為空

有時候seek()函數會報錯 “io.UnsupportedOperation: can‘t do nonzero cur-relative seeks”

這種錯誤的原因和解決方案我寫在了另一篇隨筆裏: 使用seek()方法報錯:“io.UnsupportedOperation: can‘t do nonzero cur-relative seeks”錯誤的原因

http://www.cnblogs.com/xisheng/p/7636736.html

seek()方法的使用