题目内容
假设有一个存放学生学号和语数英三门功课成绩的列表studs如下:
studs= [{‘sid’:‘103’, ‘Chinese’: 90, ‘Math’:95, ‘English’:92},{‘sid’:‘101’, ‘Chinese’: 80, ‘Math’:85, ‘English’:82}, {‘sid’:‘102’, ‘Chinese’: 70, ‘Math’:75, ‘English’:72}]。编写程序,将列表studs的数据内容提取出来,放到一个字典scores中,在屏幕上按学号从小到大的顺序显示输出所有学生的学号及语数英三门功课的成绩。文章来源:https://www.toymoban.com/news/detail-713769.html
求解代码
# 原始数据构成的列表,列表中每一个元素是一个字典
studs= [{'sid':'103', 'Chinese': 90, 'Math':95, 'English':92},\
{'sid':'101', 'Chinese': 80, 'Math':85, 'English':82},\
{'sid':'102', 'Chinese': 70, 'Math':75, 'English':72}]
studs.sort(key=lambda x:eval(x['sid']))
# 创建一个名为scores的字典并记录原始数据
scores=dict()
for student in studs:
scores[student['sid']]=list()
scores[student['sid']].append(student['Chinese'])
scores[student['sid']].append(student['Math'])
scores[student['sid']].append(student['English'])
# 输出字典结果
for score in scores:
print('{}:{}'.format(score,scores[score]))
输出结果
文章来源地址https://www.toymoban.com/news/detail-713769.html
到了这里,关于Python字典应用:学生成绩列表输出的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!