CodeGym /課程 /Python SELF TW /檔案操作

檔案操作

Python SELF TW
等級 21 , 課堂 0
開放

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() 方法。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION