1、lambda表达式
说明:通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。
例:
def f ( x ,y):
return x * y
print(f(1,2))
等效于:
g = lambda x ,y: x * y
print(g( 2 , 3 ))
2、Python提供了很多函数式编程的特性
如:map、reduce、filter、sorted等这些函数都支持函数作为参数
- reduce() 函数会对参数序列中元素进行累积
- map()Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list
的每个元素上,得到一个新的 list 并返回。 - filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表
(mouth,day) = (1,23)
a = ((1,12),(1,23),(1,25))
b = (1,24)
#filter 从a中取出小于b的元素
print(filter(lambda x:x < b,a))
#list打印出 从a中取出小于b的元素
print(list(filter(lambda x:x < b,a)))
print(len(list(filter(lambda x:x <= (mouth,day),a))))
foo = [2, 18, 9, 22, 17, 24, 8, 12, 27]
print (list(map(lambda x: x % 3, foo)))