day11 reduce函数
场景模拟:
序列元素在原有基础上加1 常规方法
简单但扩展性查
num1 = [1,2,3,4,5,6,7,8,9,100]
res = 0
for i in num1:
res += i
print(res)
函数方法
扩展性好,代码多
num1 = [1,2,3,4,5,6,7,8,9,100]
def reduce_test(array):
res = 0
for i in array:
res += i
return res
print(reduce_test(num1))
reduce 函数
场景模拟 :序列内的所有元素相乘
内部原理,参数两个,方法以及预处理参数
num1 = [1,2,3,4,5,6,7,8,9,100]
# def multi(x,y):
# return x*y
# lambda x,y:x*y
def reduce_test(func,array):
res = array.pop(0)
for i in array:
res = func(res,i)
return res
print(reduce_test(lambda x,y:x*y,num1))
reduce函数支持初始值
场景模拟 :序列内的所有元素相乘,并附加一个初始值一起相乘操作
代入初始值后的原理
num1 = [1,2,3,4,5,6,7,8,9,100]
# def multi(x,y): # 依旧是运算方法简单的话可以用匿名函数替换
# return x*y
# lambda x,y:x*y
def reduce_test(func,array,init=None): # 在参数中加入了初始值
if init is None:
res = array.pop(0)
else:
res=init
for i in array:
res = func(res,i)
return res
print(reduce_test(lambda x,y:x*y,num1,10000))
reduce 函数
在Python3中,reduce()函数已经被从全局名字空间里移除了,
放置在fucntools模块里,通过引入functools模块来调用
from functools import reduce
num1 = [1,2,3,4,5,6,7,8,9,100]
print(reduce(lambda x,y:x*y,num1,10))
day11 reduce函数的更多相关文章
- Python day11 filter函数筛选数据,reduce函数压缩数据的源码详解
1.filter滤波器函数定义一个数组,需求:过滤出带ii的字符串 arr=['dsdsdii','qqwe','pppdiimmm','sdsa','sshucsii','iisdsa'] def ...
- reduce() 函数
reduce()函数 reduce()函数也是Python内置的一个高阶函数.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传 ...
- python reduce()函数
reduce()函数 reduce()函数也是Python内置的一个高阶函数.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传 ...
- Python的map、filter、reduce函数 [转]
1. map函数func作用于给定序列的每个元素,并用一个列表来提供返回值. map函数python实现代码: def map(func,seq): mapped_seq = [] fo ...
- Python中的map()函数和reduce()函数的用法
Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下 Py ...
- MapReduce的reduce函数里的key用的是同一个引用
最近写MapReduce程序,出现了这么一个问题,程序代码如下: package demo; import java.io.IOException; import java.util.HashMap; ...
- python的reduce()函数
reduce()函数也是Python内置的一个高阶函数. reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接 ...
- Python lambda和reduce函数
看到一篇博文写lambda和reduce函数.笔者小痒了一下,用Python实现一下: #! /usr/bin/env python # -*-coding:utf-8-*- import time ...
- python中的map、filter、reduce函数
三个函数比较类似,都是应用于序列的内置函数.常见的序列包括list.tuple.str. 1.map函数 map函数会根据提供的函数对指定序列做映射. map函数的定义: map(function ...
随机推荐
- 走近SpringBoot
(博客园不支持MarkDown编辑,看完整版请移步:https://www.zybuluo.com/Allen-llh/note/1199946) 1. (Building a RESTful Web ...
- python学习总结---学习交流群里的问题总结
xml里面的过滤: <record id="action_partner_supplier_form_demo_ms" model="ir.actions.act_ ...
- Artificial Intelligence Computing Conference(2018.09.12)
时间:2018.09.12地点:北京国际饭店会议中心
- JavaFx之不通过全局静态变量进行窗体通信
百度了n多窗体通信,,,总是通过定义全局静态变量进行传值通信..我个人不喜欢一个controller里写满所有的布局(这样显得臃肿,但是组件传值方便).有没有另外的办法进行模块化并且可以传值呢.. 肯 ...
- ORA-12638:Credential retrieval failed(身份证明检索失败)解决方法
版本:oracle 11g 解决方法: 在sqlnet.ora中设置SQLNET.AUTHENTICATION_SERVICES= 0.本人亲自验证,可以解决此问题. 网上说设置SQLNET.AUTH ...
- 【JVM.4】调优案例分析与实战
之前已经介绍过处理Java虚拟机内存问题的知识与工具,在处理实际项目的问题时,除了知识与工具外,经验同样是一个很重要的因素.本章会介绍一些具有代表性的案例. 本章的内容推荐还是原文全篇看完的好,实在不 ...
- 基于BlogEngine.NET搭建个人博客
早些时候在万网以我自己的英文名买了个域名 giantliu.com又看到万网有一个免费版本的虚拟主机,而且还支持.net4.5这年头支持.net4.5的免费主机不多,本来想用阿里云/windows a ...
- 实例解析forEach、for...in与for...of
在开发过程中经常需要循环遍历数组或者对象,js也为我们提供了不少方法供使用,其中就有三兄弟forEach.for...in.for...of,这三个方法应该是使用频率最高的,但很多人却一值傻傻分不清, ...
- 运维中的日志切割操作梳理(Logrotate/python/shell脚本实现)
对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮 ...
- BZOJ3782 上学路线
设障碍个数为,\(obs\)则一般的容斥复杂度为\(O(2^{obs})\).但因为这个题是网格图,我们可以用DP解.设\(f[i]\)表示不经过任何障碍到达第\(i\)个障碍的方案数,转移时枚举可以 ...