Python 3.6
我必须编写一个输入整数n的程序。然后我必须输入n个学生的名字以及他们在数学,物理和化学方面的分数。然后我输入我已输入的名称。我必须打印那个人获得的分数的平均值。我打印的答案必须打印最多2位小数。我编写了代码,但每次都无法打印2位小数。 例如:
37.00
或
26.50
或
32.87
这是我的代码:
n = int(input("Number of persons: "))
scoresheet = []
for i in range(n):
name, math, phy, chem = input("Enter name, math score, phy score, chem score : ").split()
scoresheet.append({'name' : name, 'math' : math, 'phy' : phy, 'chem' : chem})
who = input()
for i in scoresheet:
if (i['name'] == who):
m = float(i['math'])
p = float(i['phy'])
c = float(i['chem'])
sum = m + p + c
avg = sum / 3
break
avg = round(avg,2)
print(avg)
我必须使用字典。我的结果是正确的。唯一的问题是我每次都必须打印2位小数。请帮忙。