filter,map,reduce
来源:互联网 发布:社交软件如何盈利 编辑:程序博客网 时间:2024/04/29 05:08
首先看一下匿名函数lambda
lambda的使用方法如下:lambda [arg1[,arg2,arg3,...,argn]] : expression
>>> add = lambda x,y : x + y>>> add(1,2)31、filter(bool_func,seq):此函数的功能相当于过滤器。调用一个布尔函数bool_func来迭代遍历每个seq中的元素;返回一个使bool_func返回值为true的元素的序列。
>>> filter(lambda x : x%2 == 0,[1,2,3,4,5])[2, 4]filter内建函数的python实现:
>>> def filter(bool_func,seq):filtered_seq = []for eachItem in seq:if bool_func(eachItem):filtered_seq.append(eachItem)return filtered_seq2、map(func,seq1[,seq2...]):将函数func作用于给定序列的每个元素,并用一个列表来提供返回值。
>>> map(lambda x : None,[1,2,3,4])[None, None, None, None]>>> map(lambda x : x * 2,[1,2,3,4])[2, 4, 6, 8]>>> map(lambda x : x * 2,[1,2,3,4,[5,6,7]])[2, 4, 6, 8, [5, 6, 7, 5, 6, 7]]map内建函数的python实现:
>>> def map(func,seq):mapped_seq = []for eachItem in seq:mapped_seq.append(func(eachItem))return mapped_seq
3、reduce(func,seq[,init]):func为二元函数,将func作用于seq序列的元素,每次携带一对(先前的结果以及下一个序列的元素),连续的将现有的结果和下一个值作用在获得的随后的结果上,最后减少我们的序列为一个单一的返回值。如果初始值init给定,第一个比较会是init和第一个序列元素而不是序列的头两个元素。
>>> reduce(lambda x,y : x + y,[1,2,3,4])10>>> reduce(lambda x,y : x + y,[1,2,3,4],10)20reduce内建函数的python实现:
>>> def reduce(bin_func,seq,initial=None):lseq = list(seq)if initial is None:res = lseq.pop(0)else:res = initialfor eachItem in lseq:res = bin_func(res,eachItem)return res
- filter,map,reduce
- filter,map,reduce
- python:map filter reduce
- filter、map、reduce、lambda
- filter()map() reduce()
- python filter/map/reduce
- filter map reduce
- lambda(),map(),reduce(),filter()
- filter、map、reduce、lambda
- python map reduce filter
- Map,Filter和Reduce
- python map reduce filter
- map、filter、reduce函数
- python map reduce filter
- filter、map、reduce学习
- Map,Filter 和 Reduce
- python map,reduce,filter
- map&reduce&filter
- Discuz网站升级后301重定向的解决方案
- apk在模拟器中能运行而手机中运行不了
- XBT TRACKER INSTALLATION
- WP7创建动画闪屏,启动画面所有知识深入详解(附源码)
- 完整版仿google分页,已发
- filter,map,reduce
- 用条件变量和信号量解决生产者和消费者问题
- <学习笔记>使用#ifndef, #define, #endif
- Windows下查找纯文本文件中的字符串 - 命令findstr简介(转)
- 文件使用二进制模式打开情况下的换行的方法
- 为ListBox的SelectedItem添加动画(附源码)
- TCP/IP协议学习笔记
- 0/1背包问题动态规划详解
- 一位老电子工程师十年的职场感悟