python匿名函数怎样使用?一文带你快速了解匿名函数
Admin 2021-06-02 群英技术资讯 1517 次浏览
匿名函数就是不需要显式的指定函数名,这篇文章给大家介绍的就是关于python匿名函数的内容,下文会详细介绍python匿名函数的定义、语法、使用场景、使用形式等等,对大家学习和理解python匿名函数有一定的帮助,感兴趣的朋友可以了解了解。
匿名函数指一类无须定义标识符的函数或子程序。Python用lambda语法定义匿名函数,只需用表达式而无需申明。
在python中,不通过def来声明函数名字,而是通过 lambda 关键字来定义的函数称为匿名函数。lambda函数能接收任何数量(可以是0个)的参数,但只能返回一个表达式的值,lambda函数是一个函数对象,直接赋值给一个变量,这个变量就成了一个函数对象。
lambda 参数:表达式
(1)需要将一个函数对象作为参数来传递时,可以直接定义一个lambda函数(作为函数的参数或是返回值)
(2)要处理的业务符合 lambda 函数的情况(任意多个参数和一个返回值),并且只有一个地方会使用这个函数,不会在其他地方重用,可以使用lambda函数
def sum_func(a, b, c): return a + b + c # 将匿名函数对象赋值给 sum_lambda sum_lambda = lambda a, b, c: a + b + c print(sum_func(1, 2, 3)) # 6 print(sum_lambda(1, 2, 3)) # 6
# 无参数 lambda_a = lambda :100 print(lambda_a()) # 100 # 一个参数 lambda_b = lambda num: num * 10 print(lambda_b(1)) # 10 # 多个参数 lambda_c = lambda a, b, c: a + b + c print(lambda_c(1, 10, 100)) # 111 # 表达式分支 lambda_d = lambda x: x if x > 5 else x + 1 print(lambda_d(4)) # 5 print(lambda_d(6)) # 6
def sub_func(a, b, func):
print("a = ", a)
print("b = ", b)
print("a - b = ", func(a, b))
sub_func(3, 2, lambda a, b: a - b)
# 结果:
# a = 3
# b = 2
# a - b = 1
sorted是Python中对列表排序的内置函数,我们使用lambda来获取排序的key
member_list = [
{"price": 9},
{"price": 999},
{"price": 99}
]
new_list = sorted(member_list, key=lambda dict_: dict_["price"])
print(new_list) # [{'price': 9}, {'price': 99}, {'price': 999}]
number_list = [100, 77, 69, 31, 44, 56]
num_sum = list(map(lambda x: {str(x): x}, number_list))
print(num_sum) # [{'100': 100}, {'77': 77}, {'69': 69}, {'31': 31}, {'44': 44}, {'56': 56}]
map是Python中用来做映射的一个内置函数,接收两个参数,第一个参数是一个函数,第二个参数是一个可迭代对象,map会遍历可迭代对象的值,然后将值依次传递给函数执行。我们使用lambda来实现map中的函数参数。
def discount_func(discount): return lambda price: discount * price p = discount_func(0.8) print(p) # <function discount_func.<locals>.<lambda> at 0x00000241352BAC10> print(p(100)) # 80.0
匿名函数可以作为一个函数的返回值,上面函数discount_func返回一个设定了折扣的匿名函数对象,调用这个对象,传入价格,就可以得到折扣后的价格
以上就是关于python匿名函数的全部介绍啦,上述示例有一定的借鉴参考价值,有需要的朋友可以看看,希望本文对大家有帮助。如果还想要了解更多python匿名函数的相关内容,大家可以继续浏览其他相关文章哦!
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是有关python实现远程登录服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,接下来一起跟随小编看看吧。
这篇文章主要介绍了利用Python代码提取音乐高潮部分,文章围殴绕Python代码的相关详情展开提取音乐的内容,需要的小伙伴可以参考一下
内容介绍一、用户输入1.输入字符串2.使用函数int()获取数值输入3.求模运算符的应用二、while循环1.简单的while循环2.通过用户输入退出while循环3.使用标志4.使用break退出循
文件编码格式是最容易出错的问题之一。如果编码格式不正确,就会完全读取不出文件内容,出现类似于以下的错误, 让人完全不知所措:
这篇文章主要介绍了pycharm中keras导入报错无法自动补全cannot find reference分析,文章围绕主题展开分析,需要的小伙伴可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008