【发布时间】:2021-08-20 12:07:59
【问题描述】:
我们有一个计算项目,在最后阶段,我必须制作一个有序的排行榜(top5)。然而,这比我想象的更令人困惑。 到目前为止,我已经得到了这个,但它没有被订购,也没有前 5 名。
def leaderboard():
print ("\n")
print ("⬇ Check out the leaderboard ⬇") #LEADERBOARD SECTION
f = open('H_Highscore.txt', 'r')
leaderboard = [line.replace('\n','') for line in f.readlines()]
i = 0
limit = 5
while i < limit:
leaderboard_tuples = [tuple(x.split(',')) for x in leaderboard]
leaderboard_tuples.sort(key=lambda tup: tup[0])
i+=1
for i in leaderboard:
print(i)
f.close()
time.sleep(10)
user = str(input("Enter a name: "))
file = open ("H_Highscore.txt", "a")
score = str(input("enter you score: "))
file.write("\n")
file.write(user)
file.write(",")
file.write(str(score)) # (int(x)) can not be written
file.write("pts")
file.write("\n")
file.close()
time.sleep(0.5)
leaderboard()
如果能得到一些帮助会很好,但如果我找不到任何帮助也没关系。
【问题讨论】:
-
好的,首先你需要了解python中的元组是有序的,不可更改的。因此,您可能会发现使用列表更容易。
标签: python computer-science leaderboard