如何在Python中追加到檔案?


向檔案追加內容是Python程式設計中一項常見且常規的任務。如果您需要記錄資料、儲存使用者輸入或更新配置檔案,追加功能使您可以新增新資料或資訊到檔案而不覆蓋現有內容。在本文中,我們將探討使用Python追加到檔案的各種方法;我們還將透過一些帶有解釋的程式碼示例來指導您完成該過程。

您將瞭解如何在許多不同場景下使用Python向檔案追加內容。您可以參考給出的示例,瞭解如何在追加模式下開啟檔案並向其中新增新資料。您將透過以使用者友好方式描述的程式碼片段獲得實際操作經驗。

向檔案追加單行文字

為了向檔案追加單行文字,請遵循以下步驟

  • 步驟1:使用`open()`函式以追加模式開啟檔案。您可以提供檔案路徑作為第一個引數,並使用模式“a”以追加模式開啟檔案。

  • 步驟2:使用`write()`方法向檔案新增內容。將要追加的文字作為引數傳遞給`write()`方法。

  • 步驟3:最後,使用`close()`方法關閉檔案以釋放系統資源。

示例

下面給出的示例程式碼片段演示了該過程

假設我們有一個如下所示的文字檔案

#myfile.txt
This is a test file

我們以追加模式開啟檔案,然後在關閉檔案之前追加一行文字。

# Open the file in append mode
file = open('myfile.txt', 'a')
#Append content to the file
file.write('\n This is a new line of text.')

# Close the file
file.close()

當我們執行上述程式碼時,開啟myfile.txt後將得到以下輸出。

輸出

#myfile.txt
This is a test file
This is a new line of text

向檔案追加多行文字

向檔案追加多行文字的過程與向檔案追加單行文字的過程相同。但是,您可以使用“for迴圈”分別新增每一行。讓我們來看一個說明該過程的示例

示例

假設我們有一個如下所示的文字檔案。

#myfile.txt
This is a test file

# Open the file in append mode
file = open('myfile.txt', 'a')
# Create a list of lines to append
lines = ['\n Line 1\n', 'Line 2\n', 'Line 3\n']

# Append each line to the file
for line in lines:
   file.write(line)

# Close the file
file.close()

當我們執行上述程式碼時,開啟myfile.txt後將得到以下輸出。

輸出

#myfile.txt
This is a test file
Line 1
Line 2
Line 3

向檔案追加使用者輸入

還可以執行另一項操作;您還可以將使用者輸入追加到檔案。這裡有一個示例,它提示使用者輸入並將其追加到所需的檔案

示例

假設我們有一個如下所示的文字檔案。

#myfile.txt
This is a test file

# Open the file in append mode
file = open('myfile.txt', 'a')

# Prompt the user for input
user_input = input("Enter some text: ")

# Append the user input to the file
file.write(user_input)

# Close the file
file.close()

當我們執行上述程式碼並在輸入提示符處輸入“This is test input text”時,開啟myfile.txt後將得到以下輸出。

輸出

#myfile.txt
This is a test file 
This is test input text

向檔案追加資料列表

追加到檔案有多種方法。一種情況是向檔案追加資料列表,當您想要儲存結構化資訊時這很有用。您需要遵循以下步驟才能將資料列表追加到檔案

  • 步驟1:使用`open()`函式以追加模式開啟檔案。將檔案路徑指定為第一個引數,並使用模式“a”以追加模式開啟檔案。

  • 步驟2:建立一個包含要追加資料的列表。

  • 步驟3:然後使用迴圈遍歷列表,並使用`write()`方法將每個元素追加到檔案。

  • 步驟4:最後,您可以使用`close()`方法關閉檔案,以確保正確的資源管理。

示例

#data.txt
# Open the file in append mode
file = open('data.txt', 'a')

# Create a list of data to append
data_list = ['Jane', 'Doe', '21', 'jane.doe@example.com']

# Append each element to the file
for item in data_list:
   file.write(item + '\n')

# Close the file
file.close()

當我們執行上述程式碼時,開啟data.txt檔案後將得到以下輸出。

輸出

Jane
Doe
21
jane.doe@example.com

向檔案追加JSON資料

在這種情況下,我們將向檔案中追加JSON(JavaScript物件表示法)資料,當您想要以可讀格式儲存結構化資料時這很有用。您可以遵循以下步驟才能將JSON資料追加到檔案

  • 步驟1:使用`open()`函式以追加模式開啟檔案。將檔案路徑指定為第一個引數,並使用模式“a”以追加模式開啟檔案。

  • 步驟2:匯入JSON模組。

  • 步驟3:建立一個包含要追加資料的Python字典或列表。

  • 步驟4:可以使用`json.dump()`函式將JSON資料寫入檔案。

  • 步驟5:最後,可以使用`close()`方法關閉檔案。

示例

讓我們在這裡考慮一個示例程式碼片段,該片段顯示如何將JSON資料追加到檔案

假設我們建立一個空的data.json檔案

#data.json
import json

# Open the file in append mode
file = open('data.json', 'a')

# Create a dictionary or list to append
data = {'name': 'Jane Doe', 'age': 21, 'email': 'jane.doe@example.com'}

# Append the JSON data to the file
json.dump(data, file)

# Add a newline character to separate entries (optional)
file.write('\n')

# Close the file
file.close()

當我們執行上述程式碼時,開啟data.json檔案後將得到以下輸出。

輸出

{"name": "Jane Doe", "age": 21, "email": "jane.doe@example.com"}

在Python中向檔案追加文字或資料是一項簡單直接的任務。當您以追加模式開啟檔案並使用`write()`方法時,您可以輕鬆地向現有檔案新增或追加新內容,而不會覆蓋其內容。在本文中,我們瀏覽了一些示例,這些示例展示瞭如何向檔案追加單行、多行和使用者輸入。我們還提供了其他示例,以演示如何追加資料列表以及如何向檔案追加JSON資料。透過遵循易於理解的解釋和程式碼片段,您可以更好地瞭解如何使用Python將各種型別的資料追加到檔案。您需要注意的是,追加後必須關閉檔案,以確保正確處理系統資源。

更新於:2023年7月13日

13K+ 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.