一、file.readlines方法介紹
在Python中,我們經常需要讀取文件的內容。file.readlines()方法可以讀取整個文件內容,並返回一個列表,列表的每個元素為文件的一行文本。
f = open("example.txt", "r")
lines = f.readlines()
f.close()
print(lines)
上述代碼中,我們打開了example.txt文件,使用readlines()方法讀取整個文件內容,並將每行文本存儲為列表lines,最後打印輸出。需要注意的是,使用完readlines()方法後,需要關閉文件。
二、readlines方法的參數
file.readlines()方法可以接受一個可選的參數sizehint,用於指定讀取的最大字節數。如果sizehint為0或負數,則讀取整個文件。如果文件中的內容不足sizehint字節,則只返回實際讀取的字節數。
f = open("example.txt", "r")
lines = f.readlines(15)
f.close()
print(lines)
上述代碼中,我們指定readlines()方法最多讀取15個字節。如果文件中不足15個字節,則僅返回實際讀取的字節數。需要注意的是,讀取的是字節數而非行數。
三、處理讀取後的文件內容
使用file.readlines()方法讀取文件後,可以對返回的列表做各種操作。例如,可以使用列表切片操作獲取文件的前N行:
f = open("example.txt", "r")
lines = f.readlines()
f.close()
print(lines[:5]) # 獲取前5行
上述代碼中,我們使用切片操作獲取列表(lines)的前5個元素,即文件的前5行文本。
另外,經常需要去除換行符。讀取文件時,每一行的文本後面都會有一個換行符”\n”。可以使用字符串的strip()方法去除:
f = open("example.txt", "r")
lines = f.readlines()
f.close()
clean_lines = [l.strip() for l in lines]
print(clean_lines)
上述代碼中,我們先讀取文件內容並存儲為列表(lines),然後使用列表推導式對每一行的文本去除首尾的空白符並存儲為新列表(clean_lines)。打印輸出新列表即可。
四、讀取大文件
當需要處理大文件時,file.readlines()方法可能會導致內存溢出。一種解決方法是逐行讀取文件,並立即處理:
with open("example.txt", "r") as f:
for line in f:
print(line.strip())
上述代碼中,我們使用with語句打開文件,並使用for循環逐行讀取文件。每一行的文本使用print()函數打印輸出,並去除首尾的空白符。with語句可以自動關閉文件,無需手動調用close()方法。
五、總結
file.readlines()方法是Python中讀取文件內容的常用方法之一。除了基本的讀取外,還可以使用參數sizehint和對返回的列表做各種操作。然而,當需要處理大文件時,應當避免一次性讀取整個文件,而應當逐行讀取並立即處理。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/308222.html