lambda 表达式
a = lambda x,y:x+y
等同于
def Sum(x,y):
return x+y
lambda表达式常和filter, reduce等高阶函数结合使用
a = [1,2,3,4,5]
filter(lambda x:x>3, a)
返回列表中大于3的元素
max函数中的key参数也可以使用lambda表达式
比如a = [2,3,4,5]
max(a)取出列表中的最大值
max(a, key=lambda z:1/z)
取出取到数之后的最大值
在字典中,选择最大的value对应的key
salary = {'jam':1000
'kevin':2000
'jane':3000
'jack':4000}
a = max(salary, key=lambda x:salary[x])
输出a=jack
lambda表达式结合map函数
map(function, iterable)
map函数的作用是把函数依次作用在每一个可迭代的元素上,然后返回一个新的list
a = map(lambda x,y:x+y, [1,2,3,4,5], [2,3,4,5,6])
b = map(lambda x,y:(x**y,x+y),[23,,4,5,6],[1,4,7,9]) # 转换为元祖
map还可以实现类型转换
map(int,'1234')
结合filter函数
filter(function, iterable)
map(lambda x:x%2==0, [1,2,3,4,5])