Python 内置函数补充匿名函数

Python3 匿名函数

定义一个函数与变量的定义非常相似,对于有名函数,必须通过变量名访问

def func(x,y,z=1):
    return x+y+z

print(func(1,2,3))

匿名函数定义:使用 lambda 来创建匿名函数

匿名函数1. 没有名字 2:函数体自带return

匿名函数

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def func(x,y,z=1):

return x+y+z
print(lambda x,y,z=1:x+y+z)

function <lambda> at 0x0000000003469488>
匿名函数也是一个函数对象,匿名函数赋值给一个变量,再利用变量来调用该函数
f=lambda x,y,z=1:x+y+z
print(f)
print(f(1,2,3))

匿名函数的应用场景:应用于一次性的场景,临时使用

2、匿名函数结合使用内置函数的用法

max,min,sorted,map,reduce,filter的用法

字典的运算:最小值,最大值,排序

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
salaries={
'egon':3000,
'alex':100000000,
'wupeiqi':10000,
'yuanhao':2000
}

print(max(salaries))  #  默认比较key值大小
print(max(salaries.values()))  # 比较values值
print(max(salaries,key=lambda name:salaries[name]))  取values,来比较
print(min(salaries,key=lambda name:salaries[name])) 取values,来比较
print(max(zip(salaries.values(),salaries.keys()))[1])  # 通过zip的方式实现




def get_value(name):
    return salaries[name]
print(max(salaries,key=get_value))
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
names=['alex','wupeiqi','yuanhao','yanglei','egon']
res=map(lambda x:x if x == 'egon' else x+'二狗子',names)
print(res)
print(list(res))

names=['alex','wupeiqi','yuanhao','yanglei','egon']

def my_map(func,seq):

    for item in seq:

        yield func(item)

res1=my_map(lambda x:x+'_二狗',names)

print(next(res1))

print(next(res1))

functools中导入reduce模块

from functools import reduce
print(reduce(lambda x,y:x+y,range(101),100))
print(reduce(lambda x,y:x+y,range(101)))
names=['alex_二狗','wupeiqi_二狗','yuanhao_二狗','yanglei_二狗','egon']

print(list(filter(lambda name:name.endswith('二狗'),names)))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值