请问这个代码哪里出现了错误,应该如何修改?

问题遇到的现象和发生背景

【问题描述】输入若干成绩值,以回车作为输入结束。输出最高的三个成绩值,以及最大值和最小值。
【输入形式】"Input a score(end of enter):"

【输出形式】"Top 3 scores:" "max={},min={}"

【输入输出示例】

Input a score(end of enter):9

Input a score(end of enter):4.6

Input a score(end of enter):8.2

Input a score(end of enter):1

Input a score(end of enter):4

Input a score(end of enter):7

Input a score(end of enter):

Top 3 scores:

9

8.2

7

max=9,min=1



ls=[]
while True:
    n=input("Input a score(end of enter):")
    ls.append(n)
    if n=="":
        break
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print("max={},min={}".format(max(ls),min(ls)))

谢谢谢谢谢,非常感谢
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

这个意思吗? 符合要求了就点个采纳吧,还有另外一个问题

img

img


ls = []
while True:
    n = int(input("Input a score(end of enter):"))
    ls.append(n)
    if n == 1:
        break
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print("max={},min={}".format(max(ls),min(ls)))

注意input输入是字符串,写成我这样就行,望采纳!,谢谢!!!


ls = []
while True:
    n = float(input("Input a score(end of enter):"))
    if n != 0:
        ls.append(n)
    else:
        break
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print(sorted(ls,reverse=True)[0])
print("max={},min={}".format(max(ls),min(ls)))