该程序应显示:
Here are your grades
Math score is 100
Science score is 90
Reading score is 70
Average grade score is 86.66
但是,有了我的代码,它就会显示以下内容:
Here are your grades:
Math score is 100.0
Sciencee score is 95.0
Reading score is 86.66666666666667
The average score is 86.66666666666667
所以基本上平均水平是正确的,但是现在分数不是。
gradesFile = open("grades.txt","r")
#Establishes the variables
total = 0
numberOfLines = 0
lines = 0
print('Here are your grades:','\n')
# Creates a loop that will print out each score, until there aren't anymore
# scores to read. For example:
#Math score is 100
#Science score is 90
#and so on.
for line in gradesFile:
numberOfLines += 1
lines = line.strip()
total += float(gradesFile.readline())
score = total / numberOfLines
print(lines + ' score is', score)
gradesFile.close
average = float(total) / (numberOfLines)
print('The average score is', average)
grades.txt文件如下:
数学
100.0
科学
90.0
阅读
70.0
答案 0 :(得分:0)
您的score
本质上是滚动平均值。无需这样做,只需直接打印即可:
for line in gradesFile:
numberOfLines += 1
lines = line.strip()
score = float(gradesFile.readline())
total += score
print(lines + ' score is', score)