如何将代码中的值与单独的文本文档中的值进行比较?

时间:2018-12-21 10:50:27

标签: python file save

因此,我对Python还是一个新手,我刚刚完成了自己的第一款游戏。目前,我有一个临时评分系统,可以在屏幕上显示当前评分,但是每次重新启动时都会重置为0。我想创建一种“本地保存”系统,将以前的高分与新的高分进行比较,并在新的高分较高时对其进行更新。

我的想法是以某种方式创建一个单独的文本文件,在该文件中将存储和保存高分。有什么方法可以将代码中的分数与文本文件中的“得分”进行比较,并覆盖文本文件中的当前“得分”? 我将非常感谢您的建设性回应!

2 个答案:

答案 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,但我宁愿将其用于存储,而不仅仅是直接在文本文件中写入值