Сравните значение со значением в текстовом файле и замените значение, если оно выше

#python #file

Вопрос:

В настоящее время я работаю над проектом, в котором мне нужно закодировать простую игру в угадывание чисел с системой высоких баллов. Где, если ваш балл выше, чем один из 10 лучших баллов, он заменит указанный балл и сообщит вам, что вы получили новый высокий балл. На данный момент я немного зациклился на извлечении значения из файла и сравнении его со счетом, когда вы завершите игру. Я новичок в программировании, код будет ниже.

Игра в угадывание чисел с высокими баллами:

 import pygame
from random import randint
a = True
n = randint(1,10)
guesses = 0

#If scores ever need to be reset just run function
def overwritefile():
    f = open("Numbergame.txt", "w")
    f.close()

#overwritefile()
#Guessing Game Code
while a == True:
    guess = int(input("What is your guess? nEnter a number!"))
    if guess > n:
        print("Guess is too high! nTry Again!")
        guesses  = 1
    elif guess < n:
        print("Guess is too low! nTry Again!")
        guesses  = 1
    else:
        guesses  = 1
        a = False

print("You guessed the number! nIt was "   str(n)   "nIt took you: "   str(guesses)   " guesses")

#Adding Score to the file
f = open("Numbergame.txt", "a")
f.write(str(guesses)   'n')
f.close()



#Compare values and figure out if it is a new highscore
#Maybe I will use the TRY thing got taught recently might help iron out some errors






##
##last_high_score = 0
##
##try:
##    f = open("Numbergame.txt", "r")
##    user = str(guesses)
##
##    for line in f.readline():
##        line_parts = line.split(" has a score of ")
##
##        if len(line_parts) > 1:
##            line_parts = line_parts[-1].split("n")
##            score = line_parts[0]
##            if score.isdigit() and int(score) > last_high_score:
##                last_hight_score = int(score)
##except Exception and e:
##    pass
##
##if int(guesses) > last_high_score:
##    f = open("Numbergame.txt", "a")
##    f.write(str(guesses)   "n")
##
##print("n")
##f = open("Numbergame.txt", "r")
##whole_thing = f.read()
##f.close()





##for i in len("Numbergame.txt"):
##    file.readline(i)
##    if guesses < file.readline(i):
##        print("Not a highscore")
##    elif guesses > readline(i):
##        print("Is a highscore")
##    else:
##        print("Not a highscore")
 

Два бита, которые закомментированы, — это мои попытки, первый-это тот, который я скопировал из другого вопроса, а второй-моя попытка

Комментарии:

1. Сосредоточьтесь на одном вопросе за раз. Сначала считайте значения из файлов в список. Затем сравните новый высокий балл со значениями из списка и при необходимости измените значения в списке. Затем запишите значения из списка обратно в файл. (Почему? Трудно осуществлять произвольный доступ к файлам)

2. Как бы я прочитал значение из файла в список @Codebling?