0
我想编码一个标准偏差项目,并且遇到错误,我将在下面留下我的代码。不知道究竟是什么导致了这个错误,如果任何人可以请留下一个更正或如何解决这个下面,我将不胜感激。Python 3错误:TypeError:不支持的操作数类型(s)+ =:'int'和'str'
Billy = {
'Homework':[76, 88, 90, 95, 54],
'Quiz':[89, 97, 54],
'Test':[78, 89]
}
Martha = {
'Homework':[74, 66, 90, 100, 98],
'Quiz':[67, 80, 99],
'Test':[88, 98]
}
Robert = {
'Homework':[89, 76, 65, 99, 87],
'Quiz':[88, 98, 73],
'Test':[81, 92]
}
#Sum
def grades_sum(homework):
total = 0
for grade in homework:
total += grade
return total
print(grades_sum(Billy))
#Average
def grades_average(grades):
sum_of_grades = grades_sum(grades)
average = sum_of_grades/float(len(grades))
return average
它返回以下错误:
Traceback (most recent call last):
File "python", line 26, in <module>
File "python", line 23, in grades_sum
TypeError: unsupported operand type(s) for +=: 'int' and 'str'
此代码不会导致该错误。你能否包含实际导致问题的代码? – Mureinik
你需要指定你正在访问的字典的哪些元素:编辑this =>作为作业的成绩['Homework']: 您也可以将'Homework'作为变量 – RysDe
正确'print(grades_sum(Billy))'到'print(grades_sum(Billy ['Homework']))' – dawg