附加到文件,但始终在最后一行保留一些文本

时间:2016-05-07 04:49:39

标签: python

我正在处理这个python文件,我正在使用用户输入向其添加信息。但是,一旦我重新运行我的程序,我必须能够保留底部签名或硬编码文本而不会对其进行附加写入。

  • 示例:First Name \n Last Name \n sig \n

    First Name \n Last Name \n sig \n

我想要

First Name \n
Last Name \n
First Name \n
Last Name \n
sig

1 个答案:

答案 0 :(得分:0)

如果您知道签名将始终是一行,那么您可以将整个文件读入一行数组,将其拆分为数据和sig,附加到数据,重新组合并输出到您的文件。这是你如何做到的:

with open('myfile') as f:
    lines = f.read().splitlines()

data = lines[:-1]
sig = lines[-1]

# append lines to data
data.append('First Name')
data.append('Last Name')

# add the sig back on
data.append(sig)

with open('myfile', 'w') as f:
    f.write('\n'.join(data))