高阶函数应用
高级函数是对于函数应用更为简洁,更为高效的方法。
- 递归的了解与应用
- 特点
- 函数内部自己调用自己
- 必须要有出口
- 递归可以用于多种情况下,一般需要和if判断语句结合使用
- lambda的作用
- lambda 简化代码 减少占用的内存 匿名函数→对于方法来说,for循环进行简写
- 格式
- 用了一行lambda简化了式子
- 将函数内容放在最后面
- 函数定义放在最前面用=
- def 换成lambda
- 形参: 函数内容 有一个返回值 并且只有一句代码 参数部分可有可无
- 多个参数时,函数参数直接写在lambda后,实际参数写在括号里,放在最后 return可以不写
- lambda表达式的应用
- 循环中能列出去到什么 用lambda就能取出并方便嵌套使用
- 多级列表选取值,把列表里面的数据循环出来
- 用lambda进行分类列表,利用索引连续嵌套索引key排序
- 高阶函数map
- map(func,list) 映射出一个新的数据
- map生成的内容是迭代器,用list 强转序列
- 也就是说可以用map对列表内的每一个值都可以统一操作但不会改变原列表
- 高阶函数reduce
- reduce(func,list) 累积 两个参数,加减乘除幂等都可以,例如reduce(lambda a,b:a+b ,list1)
- 如果直接程序编写,会发现未引用无法使用函数,需要利用函数工具箱
- 一种是导入函数工具箱
- import functools
- functools.函数()
- 另一种是从函数工具箱导入,可以直接引用函数
- from functools import 函数
- 函数()
- 一种是导入函数工具箱
- 高阶函数filter
- filter(func,list) # 过滤不符合表方式的数据
- 例如取偶数filter(lambda i:i%2==0,list1)),也是无法直接显示,需要强制转换为list
标签:02,map,第七,函数,编程,list,列表,高阶,lambda From: https://www.cnblogs.com/qipaxiaopao/p/17011411.html