为什么我不能替换 .txt 文件中的文本
Why can I not replace text in .txt file
现在,我正在制作一个简单的游戏,并尝试记录高分并在游戏打开时将其保存。我有一个文件,best_score.txt
,打开时从中检索高分,如果在整个游戏过程中 score == best
,我希望将当前分数保存在该文件中。 best_score.txt
中唯一的文字是分数。
目前,文件是这样打开和读取的:
with open("best_score.txt", "r") as f:
best = int(f.read())
old_best = best
高分(best
)是从文件中拉出来的,我有第二份高分(old_best
)保存以备后用。
在游戏过程中,如果有人打破了他们的最高分,best
将被设置为等于他们上升的分数。
一旦他们重新启动或关闭游戏,如果 score == best
此代码 运行s:
with open("best_score.txt", "w") as f:
f.write(f.replace(str(old_best), str(best)))
这是为了在游戏开始时搜索原来的高分(old_best
),并用新的高分代替。现在,当我 运行 游戏并击败高分时,新的不会被记录。文本文件变成空的,里面根本没有文本,或者它仍然是以前的最高分。我哪里做错了,或者我还能用什么其他方法将乐谱保存在文本文件中?
我知道有 on here and explanations on how to write text on other websites,但我就是无法正常工作。这是我在编程中的第一个“大”项目(100 多行),这是唯一真正让我难过的事情。任何帮助将不胜感激。
你太复杂了:
with open("best_score.txt", "w") as f:
f.write(best)
这将用新文本覆盖文本。
现在,我正在制作一个简单的游戏,并尝试记录高分并在游戏打开时将其保存。我有一个文件,best_score.txt
,打开时从中检索高分,如果在整个游戏过程中 score == best
,我希望将当前分数保存在该文件中。 best_score.txt
中唯一的文字是分数。
目前,文件是这样打开和读取的:
with open("best_score.txt", "r") as f:
best = int(f.read())
old_best = best
高分(best
)是从文件中拉出来的,我有第二份高分(old_best
)保存以备后用。
在游戏过程中,如果有人打破了他们的最高分,best
将被设置为等于他们上升的分数。
一旦他们重新启动或关闭游戏,如果 score == best
此代码 运行s:
with open("best_score.txt", "w") as f:
f.write(f.replace(str(old_best), str(best)))
这是为了在游戏开始时搜索原来的高分(old_best
),并用新的高分代替。现在,当我 运行 游戏并击败高分时,新的不会被记录。文本文件变成空的,里面根本没有文本,或者它仍然是以前的最高分。我哪里做错了,或者我还能用什么其他方法将乐谱保存在文本文件中?
我知道有
你太复杂了:
with open("best_score.txt", "w") as f:
f.write(best)
这将用新文本覆盖文本。