如何使用 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-07-13

13K+ 次查看

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.