|
阅读:7463回复:0
python lambda表达式介绍
学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即:
# 普通条件语句 if 1 == 1: name = 'wupeiqi' else: name = 'alex' # 三元运算 name = 'wupeiqi' if 1 == 1 else 'alex' 对于简单的函数,也存在一种简便的表示方式,即:lambda表达式 # ###################### 普通函数 ###################### # 定义函数(普通方式) def func(arg): return arg + 1 # 执行函数 result = func(123) # ###################### lambda ###################### # 定义函数(lambda表达式) my_lambda = lambda arg : arg + 1 # 执行函数 result = my_lambda(123) lambda存在意义就是对简单函数的简洁表示 内置函数 二 一、map 遍历序列,对序列中每个元素进行操作,最终获取新的序列。 图片:1.png
li = [11, 22, 33] new_list = map(lambda a: a + 100, li) li = [11, 22, 33] sl = [1, 2, 3] new_list = map(lambda a, b: a + b, li, sl) 二、filter 对于序列中的元素进行筛选,最终获取符合条件的序列 图片:22.png
li = [11, 22, 33] new_list = filter(lambda arg: arg > 22, li) #filter第一个参数为空,将获取原来序列 三、reduce 对于序列内所有元素进行累计操作 图片:3.png ![]() 图片:4.png
li = [11, 22, 33] result = reduce(lambda arg1, arg2: arg1 + arg2, li) # reduce的第一个参数,函数必须要有两个参数 # reduce的第二个参数,要循环的序列 # reduce的第三个参数,初始值 参考:http://www.cnblogs.com/guigujun/p/6134828.html |
|
