我想读取一个text.txt文件,其中包含一些随机文本,我想创建一个程序以使其逐行读取,如果它找到特定的文本来复制该行。
我设法用以下代码找到我要复制的行 逐行读取文件 原始文件
测试副本测试
所以我做了下面的代码
with open("text.txt",'r+') as f:
for line in f:
print(line)
if 'copy' in line:
x="copy"
f.write(x)
f.write(x)
预期结果将是
测试副本复制测试
但我却得到
测试副本测试副本
答案 0 :(得分:2)
测试副本测试
已经在文件中并且不会移动...请注意,您在脚本中两次写入了“复制”。您在文件末尾写。那就是为什么你得到。
测试副本测试副本
您发现“复制”一次,然后写两次,但最后。另外,在打印“副本”时不会使用空格。
我的建议:创建一个新文件,从原始文件中读取,然后写入新文件。如果找到所需的单词,请写两次。然后继续进行到底。 p>
答案 1 :(得分:0)
如果以下操作不起作用,只需将line设置为字符串。 但是我认为这就是您想要的。
if 'copy' in line:
x = line.replace('copy', 'copy copy')
f.write(x)
您可以使用以下内容简化
if 'copy' in line:
f.write(line.replace('copy', 'copy copy'))