python小小程序练习

live long and prosper

python小小程序练习

编写函数,接收任意多个实数,返回一个元组,其中第一个元素为所有参数的平均值,其他元素为所有参数中大于平均值的实数。

先把问题的答案放出,待笔者稍后讲解:

def function(*number):
    a=sum(number)/len(number)
    b=filter(lambda num:num>a,number)
    return (a,)+tuple(b)
print(function(23,45,67,23,45))
1、首先根据题意,需要函数能够接受任意实数,所以函数传入形参加上*,

->知识点:使其接收任意数量的形参

def function(*number):
2、sum()和len()函数

sum()可以求解所有参数的和,len()可以求解传入参数的个数,sum()/len()则可以求解平均值

a=sum(number)/len(number)

并且平均值列为元组的第一个元素

3、lambda表达式,filter()函数

lambda表达式筛出所有大于平均值的实数。

filter()函数

该函数用于过滤序列,将序列中的不符合条件的元组过滤掉。函数接受两个参数,第一个为过滤条件函数,第二个为传入的序列,在此例中:

过滤函数传入序列
lambda表达式number
4、tuple()函数、元组

·tuple()可以将列表转换为元组。
·“+”可以连接序列
·元组中只有一个元素使需要加上“,”有标识


欢迎斧正

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值