【每日一题0626】计算平均数

题目:这是一个学年的结束,Hogwarts学院出报告的决定性时刻,必须计算学分平均数。所有的学生都来找你,请你计算一下他们的平均成绩。别慌,你会Python,只需要写一个脚本。

要求:请你编写一个函数,返回给定数字列表的整数的平均值,记住是向下取整。例如假设计算出来的平均值是25.66,应返回25

假定列表永远不会为空。

题目难度:入门
题目来源:codewars.com

def get_average(score_list):
    pass
    
assert get_average([2, 2, 2, 2]) == 2
assert get_average([1, 5, 87, 45, 8, 8]) == 25
assert get_average([1,2,15,15,17,11,12,17,17,14,13,15,6,11,8,7]) == 11

写完了,有答案吗

可以将你的代码以回帖到方式贴出来哦,方便一起交流哈。
没有固定答案的,只要能跑通题目中的assert断言,就是合格的答案。

断言结果是对的,看看代码有没有可以改善的地方?

完全正确!优秀!

参考题解:

def get_average(score_list):
    return int(sum(score_list) / len(score_list))

:partying_face: :partying_face: :partying_face: :partying_face: :partying_face: :partying_face:

#coding=utf-8
def get_average(score_list):
    """
    计算列表平均数,向下取整
    """
    a= sum(score_list)
    return int(a/len(score_list))

assert get_average([2, 2, 2, 2]) == 2
assert get_average([1, 5, 87, 45, 8, 8]) == 25
assert get_average([1, 2, 15, 15, 17, 11, 12, 17, 17, 14, 13, 15, 6, 11, 8, 7]) == 11

image
第一种是直接使用模块函数进行计算
第二种是自己求出sum和长度

def get_average(score_list:list):
    """ 返回给定数字列表的整数的平均值,记住是向下取整"""
    score_list = [1, 5, 87, 45, 7, 10]
    print('总分:',sum(score_list))
    print('平均分:', int(sum(score_list)/len(score_list)))
def get_average(score_list):
    sum = 0
    for i in score_list:
        sum = sum + i
    sum = sum / len(score_list)
    return int(sum)


assert get_average([2, 2, 2, 2]) == 2
assert get_average([1, 5, 87, 45, 8, 8]) == 25
assert get_average([1, 2, 15, 15, 17, 11, 12, 17, 17, 14, 13, 15, 6, 11, 8, 7]) == 11
关闭