高阶函数-lambda表达式

 

 

#2.6 map()
# 第一个参数传入一个函数,,第二个参数为一个可迭代对象
li_1 = (1,3,5,7)
def funcA(x):
return x*x
m1 = map(funcA,li_1)
print(type(m1))
print(m1())

# 2.6 reduce()
# 第一个参数传入一个函数,第二个参数 可以迭代对象 ,第三个参数
#传入的函数 必须要 能够接受2个参数
#把可迭代对象的前2个参数传入到第一个函数中,把函数执行的结果作为第一个参数和可迭代对象的下一个参数作为参数传入到第一个函数中。。。

 

foo = [1,3,5,7,12,9]
for x in foo:
if x % 3 == 0:
print(x)

foo = [1,3,5,7,12,9]
[ print(x) for x in foo if x % 3 == 0 ] #使用列表推倒式实现

foo = [1,3,5,7,12,9]
a=filter(lambda x: x % 3 == 0, foo) # 使用 lambda + filter高级函数实现
for i in a:
print(i)
posted @ 2017-11-02 23:42  xuanhui  阅读(256)  评论(0编辑  收藏  举报