我有至少10万行的.dat文件。我想使用python在每行的末尾添加一些内容。我有多个.dat文件,如果可能的话,请让我知道如何处理所有文件,并在行尾添加内容并将其保存到另一个目录。
答案 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:
使用了生成器,这意味着源文件的内容在开始时并没有完全加载到内存中,而只是当前需要的内容。