1.lambda表达式
lambda表达式使用场景:
- Python在写执行脚本时可以使用lambda表达式省去函数定义的过程,提高代码简洁性。
- 对于比较抽象的函数,且执行函数只用很少的步骤。可以使用lambda表达式。
- 简化代码的可读性,不需要跳转到函数定义位置。
结构:lambda 参数:返回值
#-*-coding:GBK -*-
# -*- coding: UTF-8 -*-
#一个参数的lambdab表达式
def Line(x):
return 2*x+1
print(Line(3))
g= lambda x:2*x+1
print(g(3))
#两个参数的lambda表达式
def Add(x,y):
return x+y
print(Add(1,3))
g=lambda x,y:x+y
print(g(1,3))
2.filter过滤器
filter的参数可以是函数,可以是None对象,第二参数是可迭代数据。
如果第一个参数是函数:
将第二的可迭代数据的每一个元素作为函数的参数进行计算,将返回true的值筛选出来以列表的形式返回。
如果第一个参数为None:
将第二个参数里面的true值筛选出来
eg:
#-*-coding:GBK -*-
# -*- coding: UTF-8 -*-
print(list(filter(None,[1,0,False,True])))
#筛选奇数过滤器
def Odd(x):
return x%2
Arr=range(10)
print(list(filter(Odd,Arr)))
#lambda表达式表示
print(list(filter(lambda x:x%2,range(10))))
3.map映射
将序列的每一个元素作为函数的参数进行运算,直到可迭代序列结束,以序列的形式返回所有计算结果。
#-*-coding:GBK -*-
# -*- coding: UTF-8 -*-
print(list(map(lambda x:x*2,range(10))))