1.1 開啟檔案
在 Python 中操作檔案是非常愉快的事情,因為這個過程相當簡單且直觀。 我們現在不是在談論在磁碟上建立或移動檔案,而是閱讀和寫入檔案的內容。
檔案內容操作通常按照以下流程進行:
開啟檔案
檔案資料處理
關閉檔案
讀取檔案全部內容的範例:
file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()
open 函數用於打開檔案。它接收兩個主要參數:檔案名稱和 存取模式。 函數返回 檔案對象,然後可以用於執行讀寫操作。
範例:
file = open('example.txt', 'r')
如果只指定了檔案名,那麼檔案將在程式的當前工作目錄中尋找。 如果指定了完整的檔案名,則會按指定路徑訪問。
1.2 存取模式
函數 open() 的第二個參數表示檔案的操作模式。 存取模式決定了可以對檔案執行哪些操作(讀取、寫入等)。
這是主要的存取模式:
Read— 讀取。Write— 寫入。Append— 附加。
這些模式有幾種變體:
- 'r': 開啟檔案進行讀取(默認模式)。 檔案必須存在。
- 'w': 開啟檔案進行寫入。 檔案內容將被刪除。 如果檔案不存在,則會創建它。
- 'a': 開啟檔案以進行附加。 資料將添加到檔案末尾。 如果檔案不存在,則會創建它。
- 'r+': 開啟檔案以進行讀寫。 檔案必須存在。
- 'w+': 開啟檔案以進行讀寫。 檔案內容將被刪除。 如果檔案不存在,則會創建它。
- 'a+': 開啟檔案以進行讀取和附加。 資料將添加到檔案末尾。 如果檔案不存在,則會創建它。
寫入檔案的範例:
如果你想將資料寫入檔案,只需在開啟檔案時指定 w 作為存取模式。 注意,所有舊內容將被刪除!
file = open('example.txt', 'w')
file.write("Hello, World!")
file.close()
附加資料至檔案的範例:
如果你不想刪除檔案的內容,而只想在末尾添加內容,那麼你需要指定 a 作為檔案的存取模式。
file = open('example.txt', 'a')
file.write("\nAppended text.")
file.close()
重要! 如果你正在寫入一個尚不存在的檔案,則它將自動創建。但如果嘗試從不存在的檔案讀取資料,則會發生異常。
1.3 關閉檔案
每次你打開檔案時,操作系統都會檢查你對檔案的存取權限並標記為程式正在使用。為檔案操作分配了一個特殊資源—handler。
你能夠取得的 handler 數量是有限的。這意味著你只能同時打開幾百個檔案。看似很多,但如果你的程式在伺服器上運行幾個月,並且每天都要讀取和寫入檔案,那麼這個限制很快就會被達到。
因此,在你完成檔案操作後,需要關閉它—調用close()方法。這樣,你告訴操作系統你不再需要這個檔案及其 handler。
關閉檔案
完成檔案操作後,必須關閉它以釋放系統資源。這可以通過使用close()方法來完成。
file = open('example.txt', 'r')
# 執行檔案操作
file.close()
每個你用來讀取或寫入的檔案都應該關閉。不要忘記調用 close() 方法。
GO TO FULL VERSION