知道了。
while 1:
line = sub.readline().split()
if line == []:
new = main
break
else:
new = main.replace(line[0],line[1])
main = new
这似乎对我有用。谢谢你的帮助=)。
答案 0 :(得分:0)
正如Cameron所指出的,此方法每次都会覆盖输出文件,因此只记录您的上一次更改。
此块中的错误是:
while True:
word = substitute.readline().split()
print(word)
if word == []: // ---Indentation ---
break
else:
new = (main_story.read().replace(word[0],word[1]))
new_story.write(new)
您需要立即读取完整文件,进行更改并写入文件。 或者您可以从第一个文件中读取,然后对新文件进行后续读取/写入。
答案 1 :(得分:0)
尝试另一个循环并在该循环中索引您需要发生的单词swap:
我假设sub.txt的每一行都有你想要的潜艇。读取sub.txt的所有行,将每行存储在可索引的数组中。围绕主代码设置循环,并在循环索引中通过数组引用,依次为每次所需的sub.txt行。