首页 > 解决方案 > 存储变量后如何计算平均值?

问题描述

我正在编写一个程序来计算平均值。一切都很完美,除非程序试图计算平均值。似乎我的输入没有被存储,因此它计算 0.0 作为平均值。我在 3.6 上使用 Python IDLE。这是我的代码:

定义主():

#variables holding the total number of wins per year

year1 = 0
year2 = 0
year3 = 0
year4 = 0
year5 = 0
average = year1 + year2 + year3 + year4 + year5/5

#Introduction

print ("Enter number of wins when prompted")

#Ask user for win totals per year

year1 = (input("Please enter the number of wins for year one: "))
year2 = (input("Please enter the number of wins for year one: "))
year3 = (input("Please enter the number of wins for year one: "))
year4 = (input("Please enter the number of wins for year one: "))
year5 = (input("Please enter the number of wins for year one: "))

#calculate average

print ("Total average of wins over five years: ", average)

这是输入我的值后的结果:

出现提示时输入获胜次数

请输入第一年的获胜次数:8

请输入第一年的获胜次数:6

请输入第一年的获胜次数:3

请输入第一年的获胜次数:7

请输入第一年的获胜次数:9

五年内总平均胜场数:0.0

标签: pythonpython-3.x

解决方案


丹尼尔的更新是正确的,你创建的平均值太早了。这里有一些更新的代码可以帮助你学习:

print ("Enter number of wins when prompted")

#Ask user for win totals per year
wins_by_year = []
for year in range(5):
    wins_by_year.append(int(input("Please enter the number of wins for year {}: ".format(year+1))))

average = sum(wins_by_year)/len(wins_by_year)
print ("Total average of wins over five years: {}".format(average))

推荐阅读