题解 | #牛牛的绩点#
牛牛的绩点
https://www.nowcoder.com/practice/de8bc3e736164786b07a4dd64ed172f7
mult_sum = 0
grade_sum = 0
level_dict = {"A": 4.0, "B": 3.0, "C": 2.0, "D": 1.0, "F": 0}
while True:
level = input()
if level == "False":
break
grade = int(input())
mult_sum += grade * level_dict[level]
grade_sum += grade
print("%.02f" % (mult_sum / grade_sum))
第7行代码,如果写成 if not level: 是无法满足题意的。
变量level是字符串类型,这个时候如果输入False,level里存的变量值不为空,此时判断语句条件不成立,无法跳出循环。
查看5道真题和解析