利用嵌套字典管理学生成绩 python

您所在的位置:网站首页 gpa保留小数点 利用嵌套字典管理学生成绩 python

利用嵌套字典管理学生成绩 python

2023-01-22 05:06| 来源: 网络整理| 查看: 265

题目内容:

学生的成绩单结构为一个嵌套的字典

{学生id: {课程id: 课程得分, ...}, ...}

课程表为一个字典:

{课程id: 课程学分, ...}

输入一个学生id请你输出该生已选修的课程学分绩,小数点后保留两位小数。公式为:

(课程A得分*课程A学分 + 课程B得分*课程B学分 + ...) / [20* (课程A学分 + 课程B学分 + ...)]

注意:如果输入的学生id不存在则返回-1.00,如果学生没有选课,则学分绩GPA应该等于0.00.

输入格式:

按提示输入字符串

输出格式:

浮点数保留两位小数

输入样例:

M2021

输出样例:

3.30

(解释:66*5 / [20*(5)] = 3.30)

时间限制:500ms内存限制:32000kb

# 得分 scores = {'M1034': {'0001': 88, '0002': 85, '1002': 90, '2000': 92}, 'M2021': {'0001': 66}, 'M3014': {'0002': 85, '2000': 90, '0001': 85}, 'M1001': {'0001': 92, '3001': 95, '1002': 95, '0002': 88}, 'M3066': {}, } # 学分 course = {'0001': 5, '0002': 2, '1002': 4, '2000': 1, '3001': 2} def computeGPA(name): GPA=-1.00 scoreByName=scores.get(name,0) if scoreByName=={}: GPA=0.00 if scoreByName: sumOfScores=0 sumOfCourse=0 for score in scoreByName: xf=course.get(score,0) sumOfCourse+=xf sumOfScores+=xf*scoreByName[score] GPA=sumOfScores/(20*sumOfCourse) #保留小数点后两位round(x,2) return "%.2f" % GPA computeGPA('M3066')

 



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3