有数以万计的 Python 函数。小编经常被问到各种功能,也总有回复,但可能大部分小伙伴都看不懂。所以,每当有朋友咨询小编的时候,都会记录下来给大家讲解,今天不是很好,一起来看看吧~
概述
匿名函数,顾名思义即没有名称的函数,和
def定义的函数的区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值),表达式本身结果就是返回值,而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式:
lambda arg1,arg2,.....argn:expression
以下为一些
lambda的特点:
l
lambda是一个表达式,而不是一个语句,也就是说,我们可以在任何可以使用表达式的场景下使用lambda。
l
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知识,可以到
进行查询。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中StringIO的读写12/07
- ♥ python中的空类型是什么意思09/17
- ♥ 如何编写python if语句11/10
- ♥ 卸载后如何重新安装Python09/06
- ♥ python随机库如何生成随机小数?09/07
- ♥ python中的ansible是什么?10/07
内容反馈