读取/写入文件后,是否可以用新名称保存txt文件?

时间:2019-07-10 14:12:46

标签: python-3.x

我试图运行python程序多次打开模板,并在循环运行时,将txt模板的多个副本保存在不同的文件名下。

下面包括一个示例问题:示例模板采用以下形式:

Null Null
Null
This is the test
But there is still more text.

我进行快速编辑的代码如下:

longStr = (r"C:\Users\jrwaller\Documents\Automated Eve\NewTest.txt")

import fileinput
for line in fileinput.FileInput(longStr,inplace=1):
    if "This" in line:
        line=line.replace(line,line+"added\n")
    print(line, end='')

代码的输出正确地将新行“添加”添加到文本文件:

Null Null
Null
This is the test
added
But there is still more text.

但是,我想将此新文本另存为新文件名,说“ New Test Edited”,同时保持旧txt文件的副本可用于进一步编辑。

1 个答案:

答案 0 :(得分:1)

这是一个适合您的示例:

longStr = (r"C:\Users\jrwaller\Documents\Automated Eve\NewTest.txt")

with open(longStr) as old_file:
    with open(r"C:\Users\jrwaller\Documents\Automated Eve\NewTestEdited.txt", "w") as new_file:
        for line in old_file:
            if "This" in line:
                line=line.replace(line,line+"added\n")
            new_file.write(line)

使用上下文管理器进行简单的文件读写操作即可在完成后关闭。