今天是鐵人賽的第二十天,主要在複習昨天學習的檔案處理。
**-1打開文件 (open()):**使用 open() 打開文件,並指定模式(讀取、寫入、追加等)。
'r':只讀模式。
'w':寫入模式,會覆蓋現有內容。
'a':追加模式,將內容附加到文件末尾。
'rb' / 'wb':以二進制模式讀寫文件,適合處理非文本文件。
-2讀取文件內容:
read():一次讀取整個文件。
readline():逐行讀取文件。
readlines():將每一行作為列表元素來讀取。
舉例:
with open('example.txt', 'r') as file:
content = file.read()
print(content)
-3寫入文件:
write():將內容寫入文件。
writelines():將一個列表的多行內容寫入文件。
舉例:
with open('example.txt', 'w') as file:
file.write('This is a new line.')
**-4逐行處理大文件:**對於較大的文件,可以使用迴圈逐行處理,避免一次性讀入整個文件導致的內存問題:
with open('large_file.txt', 'r') as file:
for line in file:
print(line.strip())
**-5異常處理:**使用 try-except 捕捉文件操作中的潛在錯誤,例如文件不存在的情況:
try:
with open('non_existent_file.txt', 'r') as file:
content = file.read()
except FileNotFoundError:
print("文件不存在")