Python 追加写入 txt 文件

Python 追加写入 txt 文件

在日常开发工作中,我们有时需要将一些数据不断地写入到同一个文本文件中,这时就需要掌握如何使用 Python 的追加写入功能。

追加写入的原理

Python 中,向文本文件写入内容时,我们可以使用两种方式,一种是覆盖写入,即将原有内容清空,再写入新的内容;另一种是追加写入,即在文件末尾添加新的内容。追加写入的原理是打开文件时使用”a”参数,表示以追加模式打开文件。

代码实现

以下代码展示了如何使用 Python 进行追加写入 txt 文件的操作。

# 以追加模式打开文件
with open('test.txt', 'a') as f:
    # 写入新内容
    f.write('new content')

以上代码中,首先使用 with open('test.txt', 'a') as f 表示以追加模式打开 test.txt 文件,并将文件对象赋值给变量 f。然后使用 f.write('new content') 向文件中追加写入新的内容。最后,使用 with 语句,自动关闭文件对象。

追加写入的注意事项

  1. open() 函数的第二个参数必须是字符串 "a",表示追加模式。
  2. 如果文件不存在,则在追加写入时会自动创建新的文件。
  3. 追加写入时不会覆盖原有的内容,而是将新内容添加到文件末尾。
  4. 在追加写入时,不会自动添加文件换行符 \n,如果需要在每次追加写入后换行,需要手动添加。

完整示例

以下代码展示了如何循环多次向同一个文件进行追加写入,并添加每次写入的时间戳和换行符。

import time

with open('test.txt', 'a') as f:
    for i in range(5):
        # 计算时间戳
        timestamp = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
        # 构造内容
        content = f'timestamp:{timestamp}, content:{i}\n'
        # 追加写入
        f.write(content)

以上代码中,使用了 time 模块获取系统时间戳,并将时间戳和循环变量 i 拼接成一个新的字符串 content。另外,为了在每一次追加写入后换行,手动添加了换行符 \n。循环 5 次后,test.txt 文件中的内容为:

timestamp:2021-12-31 14:30:30, content:0
timestamp:2021-12-31 14:30:30, content:1
timestamp:2021-12-31 14:30:30, content:2
timestamp:2021-12-31 14:30:30, content:3
timestamp:2021-12-31 14:30:30, content:4

结论

使用 Python 进行追加写入 txt 文件,需要使用 "a" 参数打开文件,然后使用 write() 方法向文件中写入内容。在每次追加写入后,需要手动添加换行符 \n,并且注意不会自动添加该符号。同时,追加写入时不会覆盖原有的内容,而是将新内容添加到文件末尾。因此,在日常开发工作中,追加写入是一种非常实用的功能。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程