1、匿名函数:没有函数名字,用lambda声明
2、匿名函数的格式:
lambda arg1,arg2,…argn:expression
冒号是分隔符,冒号前是函数的参数,冒号后是一个表达式
3、匿名函数不需要用return,后面的表达式就是返回值
4、调用方法:将匿名函数赋值给一个变量,然后这个变量就可以像一个正常的 函数一样使用
###常规自定义函数
def mul(x,y):
return x*y
print(mul(4,5))
20
### 用lambda匿名函数表示
f=lambda x,y:x*y
print(f(4,5))
20
### 带有多个参数的
f=lambda x,y,z:x*y*z
print(f(4,5,7))
140
### 带有默认参数的
f=lambda x,y,z=6:x*y*z
print(f(4,5))
120
### 不带参数的
f=lambda :'456'
print(f())
456
### lambda匿名函数使用技巧
### reduce() 函数会对参数序列中元素进行累积
from functools import reduce
data=[1,2,3,4,5,6,7,8,9,10]
print(reduce(lambda x,y:x*y,data))
3628800
### map() 会根据提供的函数对指定序列做映射
data=[1,2,3,4,5,6,7,8,9,10]
print(list(map(lambda x:x*x,data)))
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]