【发布时间】:2021-06-15 00:31:02
【问题描述】:
我是 python 新手,想知道是否有人可以帮我在以下学生的分数列表中找到平均分?请告知我在这里做错了什么。
student_marks = [['Name', ['A','B','C','D','E']],
['Ankit', [41, 34, 45, 55, 63]],
['Aravind',[42, 23, 34, 44, 53]],
['Lakshay',[32, 23, 13, 54, 67]],
['Gyan', [23, 82, 23, 63, 34]],
['Pranav', [21, 23, 25, 56, 56]]
]
for student in student_marks[1:]:
marks_in_C = student[1][2]
print(marks_in_C, end=" ")
total = sum(marks_in_C)
TypeError: 'int' object is not iterable
【问题讨论】:
-
你期待什么结果,你得到了什么?当您打印
marks_in_C时,它显示了什么?符合您的预期吗? -
从您的代码中并不清楚您要平均什么。您只想打印每行的平均值吗?
-
您似乎想获得沿
C列的学生的平均值。在循环前添加marks_in_C = []并将marks_in_C = student[1][2]替换为marks_in_C.append(student[1][2])。如果您想要平均值,请将avg = total / len(marks_in_C)放在末尾。 -
使用
statistics模块。