【问题描述】
编写一个函数cacluate, 可以接收任意多个数, 返回的是一个元组.元组的第一个值为所有参数的平均值(均值保留一位小数), 第二个值是大于平均值的所有值
【样例输入】
Please input numbers,and press the Enter to end.(gap with )
1,2,3,4,5
【样例输出】
(3.0, [4, 5])
【完整代码】
def cacluate(*args):
avg = sum(args) / len(args)
above_avg = [i for i in args if i > avg]
return round(avg, 1), above_avg
s = input("Please input numbers,and press the Enter to end.(gap with ,)\n")
ls = [int(i) for i in s.split(',')]
print(cacluate(*ls))
【代码讲解】
def cacluate(*args):
...
cacluate(*ls)
当使用可变参数*args作为函数参数,调用函数传参记得带上*