6.4.2 字典应用实践

6.4.2 字典应用实践

【案例6-6】 学生成绩管理。

大一学生张华、赵云、李全的成绩如下:

姓名 高等数学 大学英语 程序设计

张华 85 96 92

赵云 92 90 96

李全 86 79 90

小明接受了一项任务,要求使用字典和列表对下列同学的成绩进行统计管理,具体要求如下:

①利用字典内嵌列表形式记录几位同学的成绩信息;

②添加一位学生的成绩信息“于明,90,87,95”;

③输出记录内容;

④求出每个人的总分;

⑤求出每门课程的平均分。

案例分析:

需要用字典内嵌列表的方式存储信息,由于字典key具有唯一性,因而用学生的姓名作为key,各科成绩则作为value,组成字典的键值对信息。

输出记录可使用元素遍历的方式,利用格式化输出。每个学生的各科成绩都是一个列表,可用列表遍历的形式,也可用列表索引的形式。本例代码采用了列表索引的方式。

计算每个学生的总分,可以在遍历字典时,将每个学生各科成绩的列表求和,在成绩后面输出。

计算各科平均分时,由于每个学生同科目的成绩分布在字典的不同元素中,可以先声明3个列表,分别用来存储3科成绩,当遍历字典时,将遍历到的学生成绩添加到对应列表中。最后对列表的数据求和,将求和数据除以字典长度,即学生数量,则可以得到各科的平均成绩。

运行结果: