因此,我对Python还是一个新手,我刚刚完成了自己的第一款游戏。目前,我有一个临时评分系统,可以在屏幕上显示当前评分,但是每次重新启动时都会重置为0。我想创建一种“本地保存”系统,将以前的高分与新的高分进行比较,并在新的高分较高时对其进行更新。
我的想法是以某种方式创建一个单独的文本文件,在该文件中将存储和保存高分。有什么方法可以将代码中的分数与文本文件中的“得分”进行比较,并覆盖文本文件中的当前“得分”? 我将非常感谢您的建设性回应!
答案 0 :(得分:0)
您可以使用此功能覆盖新分数:
分数将保存在score.txt
def overwrite(new_score):
with open("score.txt",'w') as f:
f.write(str(new_score))
您可以像这样在文件中获取旧分数
def get_score():
with open("score.txt",'r') as f:
x = f.readlines()[0]
return int(x)
答案 1 :(得分:0)
尝试一下:
import json
def save_score(score):
with open("score.json", "w") as f:
json.dump(score, f)
def read_score():
with open("score.json", "r") as f:
score=json.load(f)
return score
save_score(123)
score = read_score()
print(score)
从技术上讲,您不需要使用json
,但我宁愿将其用于存储,而不仅仅是直接在文本文件中写入值