iT邦幫忙

2024 iThome 鐵人賽

DAY 21
0
Python

30天自學Python系列 第 21

檔案處理(file handling)

  • 分享至 

  • xImage
  •  

今天是鐵人賽的第二十一天,我深入練習了檔案處理的細節,並開始將這些知識應用到更複雜的實際問題中。

-1文件模式的靈活運用:
我練習了不同的文件模式,像 'r'(讀取)、'w'(寫入)和 'a'(追加),當使用 'w' 模式時,如果文件已經存在,內容會被覆蓋;而用 'a' 模式時,新內容則會被添加到文件的最後一行,

-2大文件的處理:
我特別針對大文件進行了練習,發現一次性讀取整個文件會佔用大量內存,特別是當文件非常大時,容易導致內存不足,為了解決這個問題,我使用for迴圈逐行讀取文件,這樣既能有效處理數據,又不會佔用過多內存。
舉例:
with open('large_data.txt', 'r') as file:
for line in file:
//處理每一行數據
print(line.strip())

-3文件指針的操作:
如果需要重新從頭開始讀取文件,可以通過 file.seek(0) 將指針重置到文件開頭。

-4異常處理與健壯性:
我使用try-except結構來防止程序因文件不存在或無法讀取等問題而崩潰。
舉例:
try:
with open('missing_file.txt', 'r') as file:
content = file.read()
except FileNotFoundError:
print("文件不存在,請確認路徑")


上一篇
檔案處理(file handling)
下一篇
檔案處理(file handling)
系列文
30天自學Python30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言