Definethetypesofquestionsandtheircountsandscores
question_types={
单项选择题:{count:10,score:2},
完形填空:{count:10,score:2},
阅读理解:{count:5,score:每题4分},
短文改错:{count:10,score:1},
书面表达:{count:1,score:15}
}
Calculatethetotalscore
total_score=sum(question_type[score]question_type[count]forquestion_typeinquestion_types.values())
Printtheresult
question_types,total_score
TypeErrorTraceback(mostrecentcalllast)
CellIn[1],line11
2question_types={
3单项选择题:{count:10,score:2},
4完形填空:{count:10,score:2},
()
7书面表达:{count:1,score:15}
8}
10Calculatethetotalscore
11total_score=sum(question_type[score]question_type[count]forquestion_typeinquestion_types.values())
13Printtheresult
14question_types,total_score
TypeError:unsupportedoperandtype(s)for+:intandstr
Correctingthecalculationfortotalscorehandlingthestringscore
total_score=sum(question_type[score]question_type[count]ifisinstance(question_type[score],(int,float))elsequestion_type[score]forquestion_typeinquestion_types.values())
Convertthestringscoretointifitsasinglequestiontype
forquestion_typeinquestion_types.values():
ifisinstance(question_type[score],str):
question_type[score]=int(question_type[score].replace(每题,).replace(分,))
Printtheresult
question_types,total_score
TypeErrorTraceback(mostrecentcalllast)
CellIn[2],line2
1Correctingthecalculationfortotalscorehandlingthestringscore
2total_score=sum(question_type[score]question_type[count]ifisinstance(question_type[score],(int,float))elsequestion_type[score]forquestion_typeinquestion_types.values())
4Convertthestringscoretointifitsasinglequestiontype
5forquestion_typeinquestion_types.values():
TypeError:unsupportedoperand