编程语言中函数的应用:
- 代码块重复--降低代码的冗余
- 代码块复杂--提高程序可读性
python中由两种函数:1、def定义的函数 2、lambda函数
Python支持所谓的 匿名 或者 lambda 函数。
匿名函数是一种通过单个语句生成函数的方式,其结果是返回值。匿名函数使用lambda关键字定义,该关键字仅表达“我们声明一个匿名函数”的意思。
例如:求两个数字的和,普通函数或匿名函数如下:
- def func(x+y): return x+y
- lambda x,y: x+y
含义:冒号前,x,y是 形参 冒号后,x+y是 返回值
例1:reduce()函数
计算1-9的和:
from functools import reduce
def add(x,y):
return x+y
print(reduce(add,range(10)))
用匿名函数表示出:
print(reduce(lambda x,y:x+y,range(10)))
例2:map()函数
计算1-4的平方并且以列表的形式返回:
def mypow(x):
return x **2
print(list(map(lambda x:x**2,range(5))))
#在这里用了lambda匿名函数
例3:filter()函数
找出99以内的偶数
print(list(filter(lambda x:x%2==0,range(100))))