3

我有一个如下所示的文本文件:

unknown value 1
unknown value 2
unknown value 3
unknown value 4
unknown value 5

如何选择一行并将其内容替换为另一个字符串?

例如:

更改unknown value 1unknown value 0

我怎样才能做到这一点?

4

2 回答 2

13
import fileinput

for line in fileinput.input('inFile.txt', inplace=True): 
      print line.rstrip().replace('oldLine', 'newLine'),

这会将所有行替换为 text 'oldLine',如果您只想替换第一行,则需要添加一个条件并跳出循环。

添加 rstrip() 可避免在每行之后添加额外的空格

于 2013-05-18T10:28:06.393 回答
11

尝试这个

with open('file', 'r') as input_file, open('new_file', 'w') as output_file:
    for line in input_file:
        if line.strip() == 'to replace':
            output_file.write('new line\n')
        else:
            output_file.write(line)
于 2013-05-18T09:41:00.730 回答