匿名函数的特点
1.不用取名称,因为给函数名可以说是比较头疼的事情,特别是函数比较多的时候
2.可以直接在使用的地方定义,如果需要修改,直接找到修改即可,方便以后维护代码
3.语法结构简单,不用使用def 函数名(参数名):这种方式定义,直接使用lambda 参数:返回值 定义即可
匿名函数:1.不用给函数取名 2.取名方便,随时定义,随时使用
匿名函数的形式:lambda 参数列表:函数执行的简单的逻辑代码
lambda 返回一个函数对象,可以使用变量接收
a=lambda x:x*x
print(a)
执行结果:
at 0x000000000109E1E0>
#调用
#接收函数对象的变量(参数)
s=a(10)
print(s)
带两个参数的普通函数写法:
def add(x,y):
return x*y
rs=add(10,20)
print(rs)
带两个参数的匿名函数:
b=lambda x,y:x*y
rs=b(10,20)
print(rs)
小例子:
计算存放100个数字的列表的每一个数字的平方,返回一个新的列表
#在python3中,map函数返回的是一个列表对象,需转换为列表在可使用
list1=map(lambda x:x*x,[x for x in range(100)])
#转换为列表
list1=list(list1)
print(list1)