为了账号安全,请及时绑定邮箱和手机立即绑定

这个为什么输出结果是1,跟示例的结果1.5输出不一致

# Enter a code

def average(*args):

    lenth = len(args)

    if lenth == 0 :

        return 0;

    else:

        sum = 0

        for item in args:

            sum += item

        avg = sum / lenth

        return avg

        

print(average())

print(average(1,2))


正在回答

4 回答

因为你的sum = 0,意思是打印的最后结果默认为整数,变成sum = 0.0即可

0 回复 有任何疑惑可以回复我~

是不是python版本问题,我用Python 3.9.1没问题,输出是1.5


0 回复 有任何疑惑可以回复我~

sum = 0.0就行了

3 回复 有任何疑惑可以回复我~

已经解决了,

# Enter a code

def average(*args):

    lenth = len(args)

    if lenth == 0 :

        return 0;

    else:

        sum = 0

        for item in args:

            sum += item

        avg = float(sum) /float( lenth) #将两个数字转为float就不丢失小数部分

        return avg

        

print(average())

print(average(1,2))


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

这个为什么输出结果是1,跟示例的结果1.5输出不一致

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信