题目:这是一个学年的结束,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))
chobits
(花卷)
9
#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
第一种是直接使用模块函数进行计算
第二种是自己求出sum和长度
sunyanfen
(sunyanfen)
11
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
def get_average(score_list):
sum = 0
for i in score_list:
sum += i
return int(sum/len(score_list))
assert get_average([2, 2, 2, 3]) == 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
nobugs
14
def get_average(score_list):
return int(sum(score_list) / 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