在Python 3中计算n个数字的平均值
我想写一个程序(用Python 3)来计算n个数字的平均值,但是我不想告诉我要输入多少个数字,而是希望程序在我输入单词“end”时停止接受数字。 例如,如果我输入以下数字:在Python 3中计算n个数字的平均值,python,python-3.x,Python,Python 3.x,我想写一个程序(用Python 3)来计算n个数字的平均值,但是我不想告诉我要输入多少个数字,而是希望程序在我输入单词“end”时停止接受数字。 例如,如果我输入以下数字: 1 2 3 4 end 它会打印出来的 2.5 或者如果我进入: 10 11 12 13 14 15 16 17 end 该程序打印: 13.5 任何帮助都将不胜感激,因为我不知道该做什么。你可以这样做: inputs = [] while True: ip =input() if ip == "e
1
2
3
4
end
它会打印出来的
2.5
或者如果我进入:
10
11
12
13
14
15
16
17
end
该程序打印:
13.5
任何帮助都将不胜感激,因为我不知道该做什么。你可以这样做:
inputs = []
while True:
ip =input()
if ip == "end":
break
inputs.append(int(ip))
print(inputs)
#print(sum(inputs)/len(inputs))
print(sum(inputs)/len(inputs) if len(inputs) > 0 else 0) #calc avg only if len of inputs is greater than zero
输入:
1
2
3
4
end
输出:
[1, 2, 3, 4] #list of numbers
2.5 #avg of numbers
欢迎来到SO。你有什么代码可以开始吗?你知道如何输入数字或计算平均值吗?您知道如何编写一个接受固定数量输入并打印平均值的版本吗?还是你要找人替你写整件事?凯尔伍德的话很好。你需要提供至少相当数量的试错码,所以不适合做整个家庭作业/作业网站。张贴您的尝试并清楚地解释您遇到的问题。
打印(总和(输入)/len(输入),如果len(输入)>0,则打印其他0)
以避免有人首先键入“end”