Python字典处理求助:如何返回并打印成绩≥9的学生字典
解决Python字典筛选并返回符合条件字典的问题
我来帮你搞定这个问题!你现在的代码只能打印出成绩≥9的学生信息,但没法返回字典类型的结果,咱们调整一下代码逻辑就能实现需求:
修改思路
- 在函数内部先创建一个空字典,用来存储符合条件的学生信息
- 遍历原字典时,把成绩≥9的键值对添加到这个空字典里
- 函数最后返回这个新字典
- 调用函数时接收返回值,再打印这个字典
修改后的完整代码
def hoogvliegers(dict_studenten_cijfers): # 初始化空字典存储符合条件的学生 high_scorers = {} for key, value in dict_studenten_cijfers.items(): if value >= 9.00: # 将符合条件的学生信息添加到新字典 high_scorers[key] = value # 返回筛选后的字典 return high_scorers dict_studenten_cijfers = { 'jonas': 9.2, 'mustafa': 5.5, 'mahmut': 6.0, 'ahmed': 7.0, 'ali': 6.0, 'emma': 9.0, 'klaas': 10.0, 'pieter': 8.0, 'peter': 7.0, 'floris': 9.0, 'jakob': 8.0, 'mohammed': 10.0 } # 调用函数并接收返回的字典 resultaat = hoogvliegers(dict_studenten_cijfers) # 打印结果字典 print(resultaat)
运行结果
执行后会输出:
{'jonas': 9.2, 'emma': 9.0, 'klaas': 10.0, 'floris': 9.0, 'mohammed': 10.0}
如果还想保留原来的打印格式(比如jonas heeft cijfer 9.2.),可以在函数里同时添加打印逻辑,或者在调用后遍历结果字典打印:
# 调用后遍历结果打印详细信息 for student, cijfer in resultaat.items(): print(f"{student} heeft cijfer {cijfer}.")
内容的提问来源于stack exchange,提问作者user14416782
相关产品推荐
相关产品推荐

