gpt4 book ai didi

python - 如何将外部文件中的分数添加到字典中并对它们进行从 1 到 10 的排名

转载 作者:太空宇宙 更新时间:2023-11-03 20:20:32 25 4
gpt4 key购买 nike

我正在为学校做我的 python 骰子游戏,并且遇到了文件和字典的麻烦。我有一个包含 10 个乐谱和 10 个名字的文件,分别相邻,并且可以让它引入 10 个现有乐谱,并对它们进行排序,但无法设法获取新的乐谱和名称。

尝试使用 dict.update() 更新字典但它抛出了 TypeError: '<' not supported between instances of 'str' and 'int' :

highScores = {}

with open("highscores.txt") as f:
for line in f:
(key, val) = line.split()
highScores[int(key)] = val

for k, v in sorted(highScores.items()):
print(k,v)
score = input("S: ")
user = input("N: ")
winner = {score:user}
highScores.update(winner)

for k, v in sorted(highScores.items()):
print(k,v)

最佳答案

根据您的代码,我认为 highscores.txt 看起来像

100 user1
90 user2
95 user3
...

由于 input(__prompt: Any) -> str 返回类型 str,因此您必须更改 winner 字典以包含 k,v - 与 int 类型的键配对(就像您在 highScores[int(key)] = val 中所做的那样):

winner = {int(score) : user}

该错误告诉您 strint 无法与 > 运算符进行比较。看一下builtins.pyi中比较运算符的实现:

class int:
def __gt__(self, x: int) -> bool: ...

关于python - 如何将外部文件中的分数添加到字典中并对它们进行从 1 到 10 的排名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58189737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com