Python 我该如何为这个猜数字游戏编写保存前5名分数的代码? 来自随机导入的* 尝试=0 guessNum=randint(11000) 尽管如此: guess=int(输入(“猜测1-1000之间的数字:”) 打印(“您有”,29次尝试,“向左尝试”) 如果guess>=guessNum+1: 打印(“太高”) 尝试次数+=1 elif guess

Python 我该如何为这个猜数字游戏编写保存前5名分数的代码? 来自随机导入的* 尝试=0 guessNum=randint(11000) 尽管如此: guess=int(输入(“猜测1-1000之间的数字:”) 打印(“您有”,29次尝试,“向左尝试”) 如果guess>=guessNum+1: 打印(“太高”) 尝试次数+=1 elif guess,python,Python,将您的分数添加到名为数字的列表中,然后 from random import * tries = 0 guessNum = randint(1,1000) while True: guess = int(input("Guess a number between 1-1000: ")) print("You have",29-tries,"tries left.") if guess >= guessNum+1:

将您的分数添加到名为
数字的列表中,然后

from random import *

tries = 0

guessNum = randint(1,1000)

while True:

guess = int(input("Guess a number between 1-1000: "))
print("You have",29-tries,"tries left.")    
if guess >= guessNum+1:
    print("Too high")
    tries += 1
elif guess <= guessNum-1:
    print("Too low")
    tries += 1
if guess == guessNum:
    print("You got it right!!")
    tries += 1
    print("It took you",tries,"tries.")
    f = open("scoreBoard.txt","a")
    f.write("%-s,%-s\n" %(tries,guessNum))
    f.close()
    break
if tries == 30:
    print("You failed, the number was:",guessNum,".")
    break

然后存储列表
数字
将分数添加到名为
数字
的列表中,然后

from random import *

tries = 0

guessNum = randint(1,1000)

while True:

guess = int(input("Guess a number between 1-1000: "))
print("You have",29-tries,"tries left.")    
if guess >= guessNum+1:
    print("Too high")
    tries += 1
elif guess <= guessNum-1:
    print("Too low")
    tries += 1
if guess == guessNum:
    print("You got it right!!")
    tries += 1
    print("It took you",tries,"tries.")
    f = open("scoreBoard.txt","a")
    f.write("%-s,%-s\n" %(tries,guessNum))
    f.close()
    break
if tries == 30:
    print("You failed, the number was:",guessNum,".")
    break

然后存储您首先要将分数存入内存的列表。你可以很容易地通过一个列表来做到这一点

highscores=[0]*5
现在,当你得到一个新的分数时,你想把它放在正确的位置。假设列表中的第一项是最低的,最后一项是最高的。现在我们可以编写一个函数,将highscore附加到列表中,对其进行排序,然后返回5个最高分

def place_highscores(分数:int,highscores_列表:list):
大小=长度(高分列表)
highscore_列表。追加(分数)
highscore_list.sort()
highscore_列表=highscore_列表[-大小:]
返回高分列表
现在,您只需调用以下函数即可将新的高分放入记分板:

高分=[1,2,3,5,5] >>>高分=排名\高分(4,高分) >>>打印(高分) [2, 3, 4, 5, 5]
一旦要保存数据,就可以将其写入文件。您可以直接以自己的格式执行此操作,也可以使用pickle或json,我更喜欢使用它,因为扩展随python一起提供,并且非常易于使用:

numbers.append(yourNumber)
numbers.sort(reverse = True)
del numbers[5:]

这里有一些关于json的文档:

您首先要将分数存入内存。你可以很容易地通过一个列表来做到这一点

highscores=[0]*5
现在,当你得到一个新的分数时,你想把它放在正确的位置。假设列表中的第一项是最低的,最后一项是最高的。现在我们可以编写一个函数,将highscore附加到列表中,对其进行排序,然后返回5个最高分

def place_highscores(分数:int,highscores_列表:list):
大小=长度(高分列表)
highscore_列表。追加(分数)
highscore_list.sort()
highscore_列表=highscore_列表[-大小:]
返回高分列表
现在,您只需调用以下函数即可将新的高分放入记分板:

高分=[1,2,3,5,5] >>>高分=排名\高分(4,高分) >>>打印(高分) [2, 3, 4, 5, 5] 一旦要保存数据,就可以将其写入文件。您可以直接以自己的格式执行此操作,也可以使用pickle或json,我更喜欢使用它,因为扩展随python一起提供,并且非常易于使用:

numbers.append(yourNumber)
numbers.sort(reverse = True)
del numbers[5:]

下面是一些json文档:

当有人回答您的问题时,您通常会将该问题标记为正确。如果它不起作用,最好的做法是问更多的问题并解释你的问题。我们在这里投入了自己的时间来互相帮助,基本认知使平台变得更有用,因为它鼓励更多的合作。当有人回答你的问题时,你通常会将该问题标记为正确。如果它不起作用,最好的做法是问更多的问题并解释你的问题。我们在这里投入了自己的时间来互相帮助,基本认识使平台变得更有用,因为它鼓励更多的合作。