lambda 是构造匿名函数的关键字(匿名函数就是不用声明直接使用的函数)
lambda使用方法:
lambda + 参数 + “:”+ 返回值的表达式
如一般求和函数:
def add(x, y)
return x + y
使用时 add(1, 2)
而使用lambda则不用声明:
a = lambder x, y : x + y(包含两个参数,返回 x+ y的值)
a(1, 2)
filter是返回函数中或者一个列表,元组中所有值为True的的数据,由两个参数:函数和可迭代的序列, 序列的每一个数据作为函数的参数进行加工。它的返回值是一个列表
filter使用方法:
filter(函数, 传给函数的数据)
或者
filter(None, 列表或元组)
filter也可与lambda连用:filter(lambda 参数 :返回值表达式, 需要传递的数据)
map是一个映射, 也有两个参数:函数和可迭代的序列,序列的每一个数据作为函数的参数进行加工。返回值也是一个列表,返回加工后的数据。
map使用方法:
map(函数, 可迭代序列), map也可以与lambda连用
def add(a, x):
return x + a
s = lambda x, y :x + y
def b(x):
return x % 2
print(add(1, 2))
print(s(1, 2))
teep = range(10)
w1 = list(filter(b, teep))
w2 = list(filter(None, [1, 2, 0, True, False]))
w3 = list(filter(lambda x: x % 2, range(10)))
w4 = list(map(lambda x : x * 2, range(10)))
print(w1)
print(w2)
print(w3)
print(w4)
输出:
3
3
[1, 3, 5, 7, 9]
[1, 2, True]
[1, 3, 5, 7, 9]
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
Process finished with exit code 0