【发布时间】:2021-06-10 16:24:28
【问题描述】:
我目前正在hackerrank.com (https://www.hackerrank.com/challenges/finding-the-percentage/problem) 上做一个关于根据学生成绩找到百分比的挑战。
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()
over = len(scores)
def average_score():
average = 0
if query_name == _ in name:
for scores in student_marks:
for grade in scores:
average = average + grade
return average
average_score()
print(average / over)
我很难理解为什么即使在使用 return 语句后程序也无法识别变量(平均值)。
Traceback (most recent call last):
File "Solution.py", line 22, in <module>
print(average / over)
NameError: name 'average' is not defined
每当我尝试运行程序时,就会弹出一个 NameError。
【问题讨论】:
标签: python-3.x return nameerror