问答详情
源自:9-7 Python函数使用可变参数

print(average(1,2,2,3,4)),为什么求出来是2,而不是2.4

def average(*args):

    sum = 0

    if len(args) == 0:

        return sum

    for item in args:

        sum += item

    avg = sum / len(args)

    return avg

    


print(average(1,2,2,3,4))


为什么这个求出来是2,而不是2.4



提问者:慕侠0184542 2021-04-01 17:55

个回答

  • 小白兔cai
    2021-04-01 22:54:07
    已采纳

    print(round(average(1,2,2,3,4),2))

    你可以把打印结果改成这样,就会出现2.4,有可能你使用的编辑器版本问题,默认打印结果为整型,不保留小数点。

  • LVXC
    2021-10-04 19:35:46

    因为参与运算的都是整数,所以结果就默认取整了,只要把sum=0改为sum=0.0即可。

  • qq_慕九州9386031
    2021-08-04 10:31:38

    因为你参与运算的数据都是整形所以算出来就会四舍五入取整  把sum=0.0 这样算出来就是2.4