首页 > 解决方案 > 求具有两个参数的函数的平均值

问题描述

我对 python 比较陌生,并且有一个关于我正在尝试编写的代码的快速问题......

我正在寻找两个列表的平均值:纬度和经度。这是我的代码:

def ave_list(lat_list, long_list):
    sum = 0.0 
    for num in lat_list:
        sum = sum + num
    ave_lat = sum / len(lat_list)
    return ave

def main():
    print ave_list([47.7, 37.0, 32.9, 32.0, 40.0, 41.0, 41.4, 41.8, 0.2, 31.8, -6.3])
main()

因此,如果我只有一个参数,我知道如何求平均值,但我不知道如何编写带有两个参数的代码。如果我运行这个函数,它会告诉我 ave_list() 正好有 2 个参数,但我只给了一个。我明白这一点,但同样,我不确定如何使用这两个参数获得单独的平均值。提前致谢。

标签: pythonparameters

解决方案


要消除错误,您应该将两个值传递给您的函数。而不是使用它,更好的方法是statistics.mean

from statistics import mean
>>> mean([1, 2, 3])
2
>>> mean([1, 2, 3.0])
2.0

如果该模块不可用,您可以使用:

>>> data = [1, 2, 3]
>>> sum(data) / len(data)
2

如果您只有整数并且希望结果为 python2 中的浮点数,只需将其中一侧转换为浮点数:

>>> data = [1, 2, 3, 7]
>>> sum(data) / len(data)
3
>>> sum(data) / float(len(data))
3.25

推荐阅读