这个问题是在hackerrank中提出的。嗯,我看到了“讨论”选项卡,但我更喜欢用我自己的方式。但是我得到了错误的输出
if __name__ == '__main__':
n = int(input())
student_marks = {}
for _ in range(n):
name, *line = input().split()
scores = list(map(float, line))
student_marks[name] = scores
query_name = input()
sum=0
for key, value in student_marks.items():
if query_name == value:
for i, p in enumerate(scores):
#sum=0
sum=sum+p
per = float(sum/(i+1))
print("{:.2f}".format(per))
break
else:
print("try again")
所以我得到的输出
--Input (stdin)--
2
ram 34 56 67
anish 78 98 54
ram
--Your Output (stdout)--
try again
try again
我知道这个过程看起来很长很无聊,但我真的想通过这个逻辑来解决这个问题。因为我刚刚开始学习python
旁注:因为
sum
是一个内置的,所以不应该重写它。请为变量使用其他名称。 我看到您使用了分数变量,这是不正确的。因此,修复sum
相关内容后,您将得到以下解决方案:相关问题 更多 >
编程相关推荐