当前位置: 首页 > news >正文

Python高阶函数 - reduce

    reduce函数作用就是把一个函数作用在一个序列上,这个函数必须接收两个参数,reduce函数把结果继续和序列的下一个元素做累积计算,跟递归有点相似。



    reduce函数参数主要包括两个,一个是以上说的作用函数,另外一个是sequence 序列。还有一个是可选参数,initial 初始值。



    例如定义一个 func(x,y) 函数,执行 x * y 相乘,reduce 传入序列 [1,2,3,4,5,6] , 执行过程为 1 * 2 结果为2,然后把这结果继续和3相乘,得出6,然后 6再和4相乘,如此类推,最后结果为720



在这里插入图片描述



from functools import reducedef func(x,y):print(x,y)return x * yprint(reduce(func,[1,2,3,4,5,6]))


    当有 initial 初始值为2时: 首先是2和序列里的1相乘,得出2,再和序列的第2个元素2相乘,得出4,如此类推,最后结果为1440



在这里插入图片描述



from functools import reducedef func(x,y):print(x,y)return x * yprint(reduce(func,[1,2,3,4,5,6],2))


    最后,顺带另外一个方法知识点,也可以通过匿名函数去简写这表达式函数的运算。



在这里插入图片描述



from functools import reduce# def func(x,y):
#     print(x,y)
#     return x * y# print(reduce(func,[1,2,3,4,5,6],2))print(reduce(lambda x,y :x * y,[1,2,3,4,5,6]))

http://www.mrgr.cn/news/9598.html

相关文章:

  • 免费插件集-illustrator插件-Ai插件-路径节点分割路径
  • 以简单的例子从头开始建spring boot web多模块项目(三)-better mybatis generate的使用
  • 指针之旅(1)—— 指针基础概念知识(详细解析)
  • wangEditor5在vue中自定义菜单,取消网络图片和插入视频,上传图片,视频功能
  • 数字图像处理【15】特征检测——SIFT特征检测
  • 【LeetCode:690】员工的重要性(Java)
  • c++枚举类型StarPU实现矩阵乘
  • 趋动科技联合云轴科技推出GPU云原生超融合解决方案
  • ELK进阶-安全认证设置流程介绍
  • Python算法工程师面试整理-离散数学
  • TOMCAT全解
  • C语言典型例题51
  • 使用Java进行中小学违规教育培训数据采集实践-以某城市为例
  • pytorch, torch_tesnsorrt安装各版本匹配
  • (152)时序收敛--->(02)时序收敛二
  • HTTP与Qt:构建网络应用的桥梁
  • 矢量数据创建
  • 前端性能优化:构建快速且流畅的Web体验
  • 基于pygame的雷电战机小游戏
  • 【初阶数据结构】顺序表和链表算法题(上)