如何在Python中计算列表的平均值?
[1, 2, 3, 4] ⟶ 2.5
我想再添加另一种方法
import itertools,operator
list(itertools.accumulate(l,operator.add)).pop(-1) / len(l)
L
:from operator import truediv
L = [15, 18, 2, 36, 12, 78, 5, 6, 9]
def sum_and_count(x, y):
try:
return (x[0] + y, x[1] + 1)
except TypeError:
return (x + y, 2)
truediv(*reduce(sum_and_count, L))
# prints
20.11111111111111
average(21,343,2983) # You can pass as many arguments as you want.
这里是代码:
def average(*args):
total = 0
for num in args:
total+=num
return total/len(args)
*args
允许传递任意数量的参数。
average(3,5,123)
,但您可以输入其他数字。请记住它返回一个值,而不是打印任何东西。 - Python简单的解决方案是使用avemedi-lib库。
pip install avemedi_lib
将其包含到您的脚本中
from avemedi_lib.functions import average, get_median, get_median_custom
test_even_array = [12, 32, 23, 43, 14, 44, 123, 15]
test_odd_array = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Getting average value of list items
print(average(test_even_array)) # 38.25
# Getting median value for ordered or unordered numbers list
print(get_median(test_even_array)) # 27.5
print(get_median(test_odd_array)) # 27.5
# You can use your own sorted and your count functions
a = sorted(test_even_array)
n = len(a)
print(get_median_custom(a, n)) # 27.5
享受。
numbers = [0,1,2,3]
numbers[0] = input("Please enter a number")
numbers[1] = input("Please enter a second number")
numbers[2] = input("Please enter a third number")
numbers[3] = input("Please enter a fourth number")
print (numbers)
print ("Finding the Avarage")
avarage = int(numbers[0]) + int(numbers[1]) + int(numbers[2]) + int(numbers [3]) / 4
print (avarage)
sum(L) / float(len(L))
的意思是计算列表 L 的平均值。在调用代码中处理空列表,可以使用if not L: ...
来判断。 - n611x007