Python map,filter,reduce函数
# -*- coding:utf-8 -*- #定义一个自己的map函数
list_list = [1,2,4,8,16]
def my_map(func,iterable):
my_list = []
for ab in iterable:
x = func(ab)
my_list.append(x)
return my_list
def add1(x):
return x +1
############################
print(my_map(add1,list_list))
#自己定义的map函数+匿名函数(比较简洁了)
print((my_map(lambda x:x+1,list_list)))
下面是Python map函数
#Ptyhon的map函数+匿名函数+list(),list可以接收一个可迭代对象
print(list(map(lambda x:x**2,list_list)))
filter函数:
#定义一个自己的filter函数
members = ["sb_me","sb_you","good_girl","good_boy","sb_me"]
def my_filter(func,list):
stay_members = []
for i in list:
if not func(i):
stay_members.append(i)
return stay_members
def sb_show(x):
return x.startswith("sb") print(my_filter(sb_show,members))
#自己定义的filter函数+匿名函数
print(my_filter(lambda x:x.startswith("sb"),members))
下面是Python的filter函数
#Python的filter函数+匿名函数+list()
print(list(filter(lambda x:not x.startswith("sb"),members)))
reduce函数
#定义一个自己的reduce函数
#初级版,只有相乘,如果我想变成相加,要改函数,扩展性差
nums = [2,4,6,8,10]
def my_reduce(nums):
s_sum = nums.pop(0)
for i in nums:
s_sum = s_sum * i
return s_sum
print(my_reduce(nums))
#升级版,引入一个形参函数,使得计算灵活,还可以增加一个首参(Python的reduce可以带首参,所以我们这个也可以,为啥带咱也不知道,咱也不也敢问)
def my_reduce2(func,nums,init = None):
if init == None:
s_sum = nums.pop(0)
else:
s_sum = init
for i in nums:
s_sum = func(s_sum,i)
return s_sum
print(my_reduce2(lambda x,y:x+y,nums,2))
Python的reduce函数
#Python的reduce函数
from functools import reduce
print(reduce(lambda x,y:x+y,nums,5))
总结:
# map() 处理序列中的每个元素,得到的结果是一个‘列表’,该‘列表’元素个数及位置与原来一样
# filter()遍历序列中的每一个元素,判断每个元素得到布尔值,如果是True就留下来
# reduce()处理一个序列,把序列进行合并操作
Python map,filter,reduce函数的更多相关文章
- python map() filter() reduce()函数的用法以及实例
		
map() 看一下我的终端咋说: map()的函数用法: map(function, iterable, ...) 看一下具体例子: 注意的是一定要强制转化一下才能输出 也可以写匿名函数: (mark ...
 - python Map()和reduce()函数
		
Map()和reduce()函数 map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函 ...
 - python map filter reduce的优化使用
		
这篇讲下python中map.filter.reduce三个内置函数的使用方式,以及优化方法. map()函数 map()函数会根据提供的函数对指定序列做映射. 语法: map(function,it ...
 - python中filter(),reduce()函数
		
filter()函数 是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 和一个list,这个函数的作用是对每个元素进行判断,返回 True或 False,filter() ...
 - Python map filter reduce enumerate zip 的用法
		
map map(func, list) 把list中的数字,一个一个运用到func中,常和lambda一起用. nums = [1, 2, 3, 4, 5] [*map(lambda x: x**2, ...
 - python常用函数进阶(2)之map,filter,reduce,zip
		
Basic Python : Map, Filter, Reduce, Zip 1-Map() 1.1 Syntax # fun : a function applying to the iterab ...
 - python 内置函数 map filter reduce lambda
		
map(函数名,可遍历迭代的对象) # 列组元素全加 10 # map(需要做什么的函数,遍历迭代对象)函数 map()遍历序列得到一个列表,列表的序号和个数和原来一样 l = [2,3,4,5,6, ...
 - Python自学笔记-map和reduce函数(来自廖雪峰的官网Python3)
		
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. Python内 ...
 - 数组的高阶方法map filter reduce的使用
		
数组中常用的高阶方法: foreach map filter reduce some every 在这些方法中都是对数组中每一个元素进行遍历操作,只有foreach是没有 ...
 
随机推荐
- angularjs i18n
			
<!doctype html><html ng-app="myApp"><head> <meta charset="utf ...
 - 机器学习sklearn
			
sklearn相关模块导入 from sklearn.feature_extraction import DictVectorizer from sklearn.feature_extraction. ...
 - 汉诺塔问题-递归实现-JAVA
			
public class hanio { /** * @param args */ public static void main(String[] args) { // TODO Auto-gene ...
 - ykit入门
			
init lint pack server watch 1.创建现有工程的ykit项目 在项目文件夹下 ykit init 2.lint 检查当前项目的代码质量 手动执行代码 可验证代码正误 yk ...
 - webpack学习笔记 ——篇2
			
插件整理 extract-text-webpack-plugin 用于将css/less/sass等文件单独打包 https://webpack.docschina.org/plugins/extra ...
 - jquery评分插件jquery.raty.js
			
1.参考链接 官方地址. 教程一 教程二 2.案例1 引入文件: <!-- 评分插件 --> <script type="text/javascript" src ...
 - HAProxy原理和配置
			
HAProxy原理和配置 目录 1.HAProxy简介 2.haproxy安装和配置说明 proxies配置参数 bind配置 Balance配置 基于cookie的会话绑定 统计接口启用相关的参数 ...
 - div嵌套,常见左右分类栏目
			
最终效果图如下: html代码如下: <div class="smalItem"> <div class="leftnav"> < ...
 - github仓库主页介绍、用git管理本地仓库和github仓库、搭建网站
			
github仓库主页介绍 名词解释: 工作区: 添加.编辑.修改文件等动作 暂存区: 暂存已经修改的文件,最后统一提交到git中 git(仓库): 最终确定的文件保存到仓库,成为一个新的版本,并且对他 ...
 - 看到Console.WriteLine($"string")写法,一时间不理解$的用途
			
参了网上资料,原来它是C# 6.0的语法糖. C# 6.0 新加上的功能: Null-Conditional Operator 大概就是,简洁代码量,缩短一些关于为null的判断~ 旧写法: pu ...