【发布时间】:2021-05-11 18:33:55
【问题描述】:
谁能帮我理解下面的代码,这是关于字典的。
为什么在我添加最后一行之前 for 循环运行良好:
elif student_scores[score] <= 70:
student_grades = student_scores[score]="Failed
我什至尝试使用“else”条件,但结果是一样的:"Failed"。
如果我删除最后一部分,那么结果如预期:
{'Harry': 'Exceeds Expectations', 'Ron': 'Acceptable', 'Hermione': 'Outstanding', 'Draco': 'Acceptable', 'Neville': 62}
为什么它只给我最后一个条件的键值而删除其他所有内容?
代码:
student_scores = {
"Harry": 81,
"Ron": 78,
"Hermione": 99,
"Draco": 74,
"Neville": 62,
}
student_grades = {}
for score in student_scores:
student_grades = student_scores
if student_scores[score] >= 91:
student_grades = student_scores[score]="Outstanding"
elif student_scores[score] >= 81:
student_grades = student_scores[score]="Exceeds Expectations"
elif student_scores[score] >= 71:
student_grades = student_scores[score]="Acceptable"
elif student_scores[score] <= 70:
student_grades = student_scores[score]="Failed"
print(student_grades)
结果:失败
非常感谢您的帮助。
谢谢。
【问题讨论】:
-
您是否打算创建一个新字典,将比较结果映射到原始字典中的值?
-
你好乍得,是的
标签: python loops dictionary