如何在python文件的每一行中添加内容?

时间:2019-02-22 22:16:32

标签: python

我有至少10万行的.dat文件。我想使用python在每行的末尾添加一些内容。我有多个.dat文件,如果可能的话,请让我知道如何处理所有文件,并在行尾添加内容并将其保存到另一个目录。

1 个答案:

答案 0 :(得分:0)

如果所有文件都在一个目录中,则可以使用glob模块获取所有这些文件,否则,您需要从os.walk模块中使用os遍历目录。

然后,您将遍历从上述函数获得的每个文件名。

在此迭代中,您将首先在另一个目录(open(..., 'w+'))中创建一个新文件,然后打开要修改的文件(open(..., 'r'))。

然后,您将开始遍历要修改其内容的文件的内容:

with open(target, 'w+') as tf:
  with open(source, 'r') as sf:
    for line in sf:
      tf.write(line[:-1] + ' appended content\n')

[:-1]删除当前行中的换行符(\ n),如果文件包含\ r \ n作为换行符,则可能需要使用[:-2]

for line in sf:使用了生成器,这意味着源文件的内容在开始时并没有完全加载到内存中,而只是当前需要的内容。