我有一个看起来像这样的文本文件:
unknown value 1
unknown value 2
unknown value 3
unknown value 4
unknown value 5
如何选择一行并用另一个字符串替换其内容?
例如:
将unknown value 1
更改为unknown value 0
。
我该如何做到这一点?
答案 0 :(得分: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)
答案 1 :(得分:11)
import fileinput
for line in fileinput.input('inFile.txt', inplace=True):
print line.rstrip().replace('oldLine', 'newLine'),
这将替换所有带有文本'oldLine'
的行,如果您只想替换第一行,则需要添加条件并跳出循环。
添加rstrip()可避免在每行后添加额外空格