使用Python向现有文件添加行

问题描述 投票:0回答:4

我已经使用 python 创建了一个 txt 文件,其中包含几行文本,可以通过一个简单的程序读取。但是,我在重新打开文件并在程序的后续部分中在文件中写入附加行时遇到了一些麻烦。 (这些行将根据稍后获得的用户输入写入。)

with open('file.txt', 'w') as file:
    file.write('input')

这是假设“file.txt”之前已打开并写入。但是,在第二次打开此文件时,使用我当前拥有的代码,我必须擦除之前写入的所有内容并重写新行。有没有办法防止这种情况发生(并可能减少再次打开文件的过多代码)?

python file append
4个回答
79
投票

以“追加”方式打开文件,而不是“写入”。

with open('file.txt', 'a') as file:
    file.write('input')

78
投票

如果您想追加到文件,请使用

'a'
打开它。如果您想在文件中查找应插入该行的位置,请使用
'r+'
。 (文档


20
投票

使用

'a'
'a'
表示
append
。写入使用
'a'
属性打开的文件中的任何内容都将写入文件末尾。

with open('file.txt', 'a') as file:
    file.write('input')

0
投票

如果有

pathlib.Path
对象(而不是
str
对象),请考虑使用其
open
方法。

with my_path.open(mode='a') as file:
    file.write(f'{my_line}\n')
© www.soinside.com 2019 - 2024. All rights reserved.