2022年4月21日 星期四

Python 基礎:檔案的讀寫 file open

之前介紹過 Python 的基本資料型態,

也有淺談 Python函式的呼叫,

今天則是要來介紹

Python 基礎:檔案的讀寫 file open

此處介紹檔案讀寫有兩種方式,

差別在於需不需要作檔案關閉的動作,

但同樣都是使用 open 來開啟檔案,

語法如下:

open ( 檔名, 開啟模式 , 編碼 )

什麼是檔案 (File)

檔案 (File) 是儲存數據的連續字節,

這些數據以特定的格式儲存,

最後被翻譯為 0與1 的資料給電腦取用。

編碼與字元集

而編碼則是將人眼所見到的文字依照規定的字元集作排列與組合,

這在之前本站也有稍微提到過忘記可再回去瞧瞧,

特別是中文字需要使用適當的字元集 (此處使用 UTF-8) 才不至於產生亂碼

開啟模式(mode)

官方在檔案開啟模式中,

有均有明確的定義

常見的有 :
r  :僅讀取
w:僅寫入但檔案若存在就覆蓋,若檔案不存在就建立新檔案
rb/wb:讀取/寫入 二進制檔 ,也就是直接使用 byte方式存取,不透過任何字元集(編碼)

詳細可參照官方說明文件

檔案讀取

上面使用了兩種方法來開啟檔案,

使用第一種方式開啟的檔案在結束使用時,

必須加上 close() 來關閉檔案

故程式就寫為:

f = open(filename, 'r', encoding='UTF-8')
使用完畢最後得加上
f.close()

檔案寫入

在檔案寫入的時候,

同樣也使用兩種方法來演示,

使用 with open 開啟檔案,

在跳出程式之後會自動關閉檔案,

故寫成:

with open(filename, 'r', encoding='UTF-8') as f:
最後並沒額外增加 f.close()


若沒有關閉檔案的話會怎樣?

在存取的資料量很小的狀況下,

或許不會遇到資料遺失的問題,

當資料量稍大或者同時有許多檔案存取的情形發生的時候,

未執行關閉檔案動作容易造成資料遺失,

故養成習慣使用 with open 來存取檔案為上策。

以上就是今天的主題

Python 基礎:檔案的讀寫 file open

範例程式的原始碼會放在 GitHub上面,

需要索取的話,

訂閱我的 YouTube 頻道後,在文章底下留言吧


沒有留言: