• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python3中的lambda函数是什么?怎么用?

python 搞java代码 3年前 (2022-05-21) 17次浏览 已收录 0个评论

Python函数千千万,小编经常被问到关于各种各样的函数,一直都有回复,但是介于还有大部分小伙伴可能不了解,因此,每当小伙伴咨询小编的时候,都会记录下来,给大家讲解,今天也不厉害,一起来看下吧~

概述

匿名函数,顾名思义即没有名称的函数,和def定义的函数的最大区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值),表达式本身结果就是返回值,而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式:

lambda arg1,arg2,.....argn:expression

www#gaodaima.com来源gaodai#ma#com搞@代~码网搞代码

以下为一些lambda的特点:

lambda 是一个表达式,而不是一个语句,即我们可以在任何可以使用表达式的场景一样使用lambda。

lambda 的主体也是一个表达式,即和def定义的函数一样,lambda也有函数主体,不过lambda的主体仅仅是一个表达式,所以其使用的功能受到较大的限制。

lambda使用——无参匿名函数

# 可以将lambda直接传递给一个变量,像调用一般函数一样使用
B = lambda :True
print(B())
# 等价于
def BF():
 return True
print(BF())

示例结果:

有参匿名函数

支持多个参数

参数无默认值

two_sum = lambda x, y: x + y
# 等同于:
def two_sum(x, y): return x + y
print(two_sum(1,2))

示例结果:

3

参数带默认值

sum_with_100 = lambda x, y=100: x + y
# 等同于:
def sum_with_100(x, y=100): return x + y
print(sum_with_100(200))

示例结果:

300

一些使用实例

1. 结合三元表达式求两值中最小值

lower = lambda x,y: x if x<y else y
print(lower(7,100))

实例结果:

7

结合基础内容加实际内容,大家可以充分学习这个函数的使用技巧了哦~如果还想知道更多的python知识,可以到搞代码网进行查询。

来源:搞代码网:原文地址:https://www.gaodaima.com


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python3中的lambda函数是什么?怎么用?
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址