如何查找用户输入浮动的平均值?

时间:2013-09-03 02:18:08

标签: python python-3.x

我正在搞乱Python,想知道如何取一串浮点数的平均值。

我可以进行算术但是如何读取用户输入的浮点字符串(可以是任意数量的浮点数)?

例如,如果用户输入四个带空格的数字:

  

14.5 12.5 22.2 99.4

3 个答案:

答案 0 :(得分:1)

要将字符串拆分,请使用split字符串方法。这将为您提供一个字符串列表。然后,您可以使用列表推导将它们转换为浮点数。获得浮点数列表后,将它们相加并除以列表的长度以得到平均值。对于浮点数,math.fsum比内置sum更准确,因此最好使用它。

import math
# Use input() instead of raw_input() in 3.x
s = raw_input("Input numbers, delimited by spaces: ")
numbers = [float(n) for n in s.split()]
print("Average:", math.fsum(numbers) / len(numbers))

答案 1 :(得分:0)

你可以尝试这样的事情:

foos = []
foo = raw_input("Enter float:")
while(foo != ''):
    foos += [float(foo)]
    foo = raw_input("Enter float:")

print sum(foos)/len(foos)

答案 2 :(得分:0)

这是一种方式:

string_of_floats = [float(x) for x in input().split()]
average = float(sum(string_of_floats)/len(string_of_floats))