Python:创建新的文本文件,仅保存最后一项



我正在尝试从一系列其他文件的最后一列创建一个包含所有项目的单个文本文件,用新行分隔(因此,如果我有 4 个现有文本文件,新文件应该有 4 行(。

我拥有的代码正确地是创建一个新文件,该文件包含文件最后一列中的所有最后一项:

with open('originalfile1.txt') as f:
    lines = [line.strip().split()[-1] for line in f.readlines()]
with open('newtextfile.txt', 'w') as f:
    f.write(' '.join(lines) + 'n' + ' ')

无需进入 for 循环来遍历文件,只需为下一个文件手动运行以下命令:

with open('originalfile2.txt') as f:
    lines = [line.strip().split()[-1] for line in f.readlines()]
with open('10_stimtimes.txt', 'w') as f:
    f.write(' '.join(lines) + 'n' +' ' + 'n' + ' ')

。覆盖原始输出。而这个:

with open('IAPS_id10_run1.txt') as f:
    lines = [line.strip().split()[-1] for line in f.readlines()]
with open('10_stimtimes.txt', 'w') as f:
    f.write(' '.join(lines) + 'n' + ' '.join(lines))

。将第二个文件中最后一列的输出写入两次,并覆盖第一个文件的输出。

为了能够维护所有文件的输出,我做了什么不正确的事情?

谢谢!

如果要

将各种文件中的最后一个条目写入一个唯一文件,则需要在打开要写入的文件时使用"a"参数(追加(

如何在python 2.7.11中将数据附加到文本文件?

最新更新