我想要做的是(以下面的文本为例),在文本文件中搜索字符串“Text2”,然后在“Text 2”后两行插入一行(“插入文本”)。 “文本 2”可以位于文本文件中的任何行,但我知道它会在文本文件中出现一次。
所以这是原始文件:
Text1
Text2
Text3
Text4
这就是我想要的:
Text1
Text2
Text3
Inserted Text
Text 4
所以我已经知道如何使用下面的代码在行上方添加文本。
for line in fileinput.input('file.txt', inplace=1,backup='.bak'):
if line.startswith('Text 4'):
print "Inserted Text"
print line,
else:
print line,
但我只是不知道如何在我在文件中搜索的文本后面添加两行内容。
快速又肮脏的方式就是这样的
before=-1
for line in fileinput.input('file.txt', inplace=1,backup='.bak'):
if line.startswith('Text 2'):
before = 2
if before == 0
print "Inserted Text"
if before > -1
before = before - 1
print line,
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)