1、reduce(func,iterable,initial):

  参数:

    - func 可执行函数

    - iterable 可迭代对象

    - initial 可选,初始参数

  功能描述:调用func函数后,发生迭代,每次迭代,都会将上一次迭代结果和可迭代对象中的下一个元素传入func中执行。initial是可选的,如果给了一个值,则第一个元素用给的值,没给的话就用序列中的第一个值,然后返回函数运行后的结果

  示例:

from functools import reduce
content=reduce(lambda x,y:x+y,[i for i in range(101)])
print(content)
#

2、zip([iterable, ...])  

  参数:

    - iterable 一个或多个序列

  功能描述:这个函数可以将传进去的多个列表进行配对,让对应索引上的值放进同一个元组里,再通过list 或tuple强转(这样才可以打印出结果,而不是一个内存地址),将每一个元组放进一个列表或元组里。

  示例:

a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,b) # 打包为元组的列表
print(list(zipped))
# [(1, 4), (2, 5), (3, 6)]
print(list(zip(a,c))) # 元素个数与最短的列表一致
# [(1, 4), (2, 5), (3, 6)]

3、map(func, iterable, ...):

  参数:  

    - func 可执行函数

    - iterable 一个或多个序列

  功能描述:将func作用于每一个iterable中的每一个元素,也需要通过list或 tuple强转,如果func为None,则和zip()一样;

  示例:

listx = [1,2,3,4,5,6,7]       # 7 个元素
listy = [20,30,40,50,60,70] # 6 个元素
listz = [100,100,100,100] # 4 个元素
list_result = map(lambda x,y,z : x + y + z,listx, listy, listz)
print(list(list_result))
# [121, 132, 143, 154]

    可以看出,如果有多个序列,会按照最少元素的序列计算结果

4、filter(func, iterable)

  参数:

    - func 判断函数。

    - iterable 可迭代对象。

  功能描述:

    将序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新迭代器中。

  示例:

# 过滤出列表中的所有奇数
def is_odd(n):
return n % 2 == 1 newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(list(newlist))
# [1, 3, 5, 7, 9]

python之map,zip,reduce,filter的用法的更多相关文章

  1. 高阶函数 map,reduce, filter的用法

    1. map 用法 def fun_C(x): """求平方""" return x ** 2 result = map(fun_C, my ...

  2. python中的filter、map、reduce、apply用法

    1. filter 功能: filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函数. 调用: filter(function,seq ...

  3. Python【map、reduce、filter】内置函数使用说明(转载)

    转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ...

  4. 【转】Python 中map、reduce、filter函数

    转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ...

  5. Python【map、reduce、filter】内置函数使用说明

    题记 介绍下Python 中 map,reduce,和filter 内置函数的方法 一:map map(...) map(function, sequence[, sequence, ...]) -& ...

  6. python基础===map, reduce, filter的用法

    filter的用法: 这还是一个操作表list的内嵌函数'filter' 需要一个函数与一个list它用这个函数来决定哪个项应该被放入过滤结果队列中遍历list中的每一个值,输入到这个函数中如果这个函 ...

  7. Python:map()、reduce()、filter()的区别

    文章转于:https://blog.csdn.net/goupper1991/article/details/49803355 原文博主:https://blog.csdn.net/goupper19 ...

  8. python的map、reduce和filter(过滤器)函数(廖雪峰老师python基础)

    1.map 语法: map(func,Iterable) map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返 ...

  9. python中lambda以及与filter/map/reduce结合的用法

    一.lambda函数即匿名函数,和普通的函数相比,就是省去了函数名称而已: lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边是函数体的返回值 g = lambda x,y : x+y ...

随机推荐

  1. ASP.NET Core依赖注入解读&使用Autofac替代实现【转载】

    ASP.NET Core依赖注入解读&使用Autofac替代实现 1. 前言 2. ASP.NET Core 中的DI方式 3. Autofac实现和自定义实现扩展方法 3.1 安装Autof ...

  2. 【251】◀▶IEW-Unit16

    Unit 16 Commodities and Manufacturered Goods 多幅饼图的写作技巧 1.model1对应图片分析 2.Model1范文分析 Model 1 The pie c ...

  3. CF-816A

    A. Karen and Morning time limit per test 2 seconds memory limit per test 512 megabytes input standar ...

  4. FZU 2057 家谱(dfs)

    Problem 2057 家谱 Accept: 129    Submit: 356Time Limit: 1000 mSec    Memory Limit : 32768 KB  Problem ...

  5. ASP.NET Core会议管理平台实战_4、参数校验、操作结果封装,注册参数配置

    登陆和注册之前,需要封装 前端参数的校验,ajax的封装 参数校验,创建公共的类 ,它是一个静态类 这样在调用的时候,直接一句话就可以了,这就是封装的好处 空字符串的校验 调用方式 EF的源码里面有这 ...

  6. Razor与HTML混合输出陷阱与技巧

    3,Razor与HTML混合输出陷阱与技巧   属性名称误判 有时候我们必须让html内容与razor语句紧接在一起, eg:      您好,a先生 假设变量名称为ViewBag.Name, 您好, ...

  7. Keras AttributeError 'NoneType' object has no attribute '_inbound_nodes'

    问题说明: 首先呢,报这个错误的代码是这行代码: model = Model(inputs=input, outputs=output) 报错: AttributeError 'NoneType' o ...

  8. wordcount作业

    搭档:201631062427,201631062627 代码地址:https://gitee.com/oyyyyyy/wordcount 作业地址: 一: 代码互审情况 我们采用的都是c语言的方式完 ...

  9. 树状数组laekov

    lowbit 数组的第 i 位存储的是以 i 为结尾的长度为lowbit(i) 的一段的和. int lowBit(x) { return x & -x; } 加点 int n, bt[max ...

  10. uoj#352. 新年的五维几何(概率期望+爆搜)

    传送门 我还以为这是个五维半平面交呢--结果没看数据范围-- 题解 //minamoto #include<bits/stdc++.h> #define R register #defin ...