一、文件定位
在處理文件時,我們需要知道文件的當前位置。文件對象提供了三種方法,可以幫助我們定位文件中的特定位置:seek()、tell() 和 truncate()。
1、seek()
seek() 方法用於移動文件讀取指針到指定位置。該方法有兩個參數:第一個參數是要移動的文件指針的偏移量,第二個參數是文件指針的移動參照位置,默認值是 0,表示文件開頭。
# 以讀模式打開文件
file = open('example.txt', 'r')
# 移動文件指針到第五個位元組
file.seek(5)
# 讀取從第五個位元組開始到結尾的文件內容
content = file.read()
# 輸出讀取的文件內容
print(content)
# 關閉文件
file.close()
2、tell()
tell() 方法返迴文件的當前位置,即文件指針的當前位置。
# 以讀模式打開文件
file = open('example.txt', 'r')
# 讀取文件的前五個位元組內容
first_five = file.read(5)
# 輸出當前文件指針的位置
print(file.tell())
# 關閉文件
file.close()
3、truncate()
truncate() 方法用於截取文件中指定位置之後的部分,即將文件指針移動到指定位置並截取之後的內容。該方法接受一個可選參數,指定截取的位置,默認值是當前文件位置。
# 以讀寫模式打開文件
file = open('example.txt', 'r+')
# 移動文件指針到第五個位元組
file.seek(5)
# 截取第五個位元組之後的內容
file.truncate()
# 輸出截取後的文件內容
content = file.read()
print(content)
# 關閉文件
file.close()
二、文件遍歷
在處理文件時,我們經常需要遍歷文件內容。Python 文件對象提供了多個方法,可以幫助我們輕鬆實現文件遍歷,從而快捷地處理文件內容。
1、readline()
readline() 方法一次讀取並返回一行內容。如果文件已經讀取到結尾,返回一個空字符串。
# 以讀模式打開文件
file = open('example.txt', 'r')
# 讀取文件的第一行內容
line = file.readline()
while line:
# 輸出每行內容
print(line.strip())
# 繼續讀取下一行內容
line = file.readline()
# 關閉文件
file.close()
2、readlines()
readlines() 方法返迴文件中所有行的列表。每個列表元素都是一行內容,包含行末換行符。
# 以讀模式打開文件
file = open('example.txt', 'r')
# 讀取文件的所有行內容
lines = file.readlines()
for line in lines:
# 輸出每一行內容
print(line.strip())
# 關閉文件
file.close()
3、迭代器
文件對象是可迭代的,因此我們可以使用 for 循環逐行讀取文件內容。
# 以讀模式打開文件
file = open('example.txt', 'r')
for line in file:
# 輸出每一行內容
print(line.strip())
# 關閉文件
file.close()
三、結語
文件操作是 Python 編程中非常常見的任務。掌握文件定位和遍歷方法可以幫助我們更好地處理文件內容,提高代碼效率。
上述提到的方法只是冰山一角,文件對象還提供了許多其他有用的方法,可以在不同場景下使用。在實際應用中,針對不同的需求選擇合適的方法,可以方便快捷地處理文件內容。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/309560.html
微信掃一掃
支付寶掃一掃