介绍

  1.map()函数,会让列表中每一个元素都执行一某个函数(传递1个参数),
并且将执行函数返回的结果(无论是什么结果)放在结果列表中
  2.filter()函数,会让列表中的每一个元素都执行一次某个函数(传递1
个参数),并且将执行函数返回为真或不为None的结果放在结果列表中
  3.reduce()函数,会将列表中的每两个元素执行一次函数(传递2个参数),
并且可以将前两个元素计算的结果拿过来,继续喝列表中的第三个元素计算,计算
完成后继续和第四个计算。。。最后返回的就是计算后的结果

map

例如:获取一个列表中的奇数

# map:拿到的是return结果列表
def is_odd(n):
return n % 2 == 1
# map:拿到的是return结果列表
odd_res=map(is_odd,[1,2,3,4,5,6])
print(list(odd_res)) #[True, False, True, False, True, False]

filter

例如:获取一个列表中的奇数

#filter:把传入的函数依次作用于每个元素,根据结果True还是False决定保留还是丢弃该元素
def is_odd(n):
return n % 2 == 1 odd_res=filter(is_odd,[1,2,3,4,5,6])
print(list(odd_res)) #[1, 3, 5]

应用1:删除列表中空字符串

#应用:把列表中的空字符串删掉
def not_empty(s):
return s and s.strip() #s.strip()筛出不满足条件的 res=filter(not_empty, ['A', '', 'B', None, 'C', ' '])
print(list(res)) #['A', 'B', 'C']

reduce

Python-map、filter、reduce方法的更多相关文章

  1. Python map,filter,reduce函数

    # -*- coding:utf-8 -*- #定义一个自己的map函数list_list = [1,2,4,8,16] def my_map(func,iterable): my_list = [] ...

  2. Python map filter reduce enumerate zip 的用法

    map map(func, list) 把list中的数字,一个一个运用到func中,常和lambda一起用. nums = [1, 2, 3, 4, 5] [*map(lambda x: x**2, ...

  3. python map filter reduce的优化使用

    这篇讲下python中map.filter.reduce三个内置函数的使用方式,以及优化方法. map()函数 map()函数会根据提供的函数对指定序列做映射. 语法: map(function,it ...

  4. python map() filter() reduce()函数的用法以及实例

    map() 看一下我的终端咋说: map()的函数用法: map(function, iterable, ...) 看一下具体例子: 注意的是一定要强制转化一下才能输出 也可以写匿名函数: (mark ...

  5. python常用函数进阶(2)之map,filter,reduce,zip

    Basic Python : Map, Filter, Reduce, Zip 1-Map() 1.1 Syntax # fun : a function applying to the iterab ...

  6. python 内置函数 map filter reduce lambda

    map(函数名,可遍历迭代的对象) # 列组元素全加 10 # map(需要做什么的函数,遍历迭代对象)函数 map()遍历序列得到一个列表,列表的序号和个数和原来一样 l = [2,3,4,5,6, ...

  7. 数组的高阶方法map filter reduce的使用

    数组中常用的高阶方法: foreach    map    filter    reduce    some    every 在这些方法中都是对数组中每一个元素进行遍历操作,只有foreach是没有 ...

  8. 如何在python3.3用 map filter reduce

    在3.3里,如果直接使用map(), filter(), reduce(), 会出现 >>> def f(x): return x % 2 != 0 and x % 3 != 0  ...

  9. 在JavaScript函数式编程里使用Map和Reduce方法

    所有人都谈论道workflows支持ECMAScript6里出现的令人吃惊的新特性,因此我们很容易忘掉ECMAScript5带给我们一些很棒的工具方法来支持在JavaScript里进行函数编程,这些工 ...

  10. Swift map filter reduce 使用指南

    转载:https://useyourloaf.com/blog/swift-guide-to-map-filter-reduce/ Using map, filter or reduce to ope ...

随机推荐

  1. 几乎零配置产生Nuget包的库:White Tie

    通过Nuget管理器为你所需要产生Nuget包的项目安装White Tie,目前最新版本为1.3.16,VS2015下可用,VS2013应该问题也不大,VS2010就不好说了. 安装好之后直接重新生成 ...

  2. CPP-STL:用vector保存对象时保存指针的优点, 以及reserve的使用(转)

    代码1 #include <vector> #include <stdio.h> class A { public: A() { printf("A()/n" ...

  3. python中那个断言assert的优化

    Python Assert 为何不尽如人意# Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常. Copy >>> assert ...

  4. C#使用ref和out传递数组

    C#使用ref和out传递数组 一.使用ref参数传递数组 数组类型的ref参数必须由调用方明确赋值.因此,接受方不需要明确赋值.接受方数组类型的ref参数能够修改调用方数组类型的结果.可以将接受方的 ...

  5. Visual Studio Code快捷键_Linux

    Keyboard shortcuts for Linux Basic editing Ctrl + X Cut line(empty selection) Ctrk + C   Copy line(e ...

  6. 1、SpringBoot------表单校验

    开发工具:STS 代码下载链接:https://github.com/theIndoorTrain/Springboot/tree/1ef5e597a6f866e73387c0238dbcdf46cf ...

  7. java面试题:已知一个数组[2,4,6,2,1,5],将该数组进行排序(降序,不能用工具类进行排序),创建两条线程交替输出排序后的数组,线程名自定义

    package com.swift; import java.util.Arrays; import java.util.Comparator; public class ArrayThread_Te ...

  8. C编程经验总结5(剧终)

    Prolog是AI编程语言 Git(分布式)  svn(集中式)   commit(委托,犯罪) patch补丁)  merge(融入) repository(仓库) Ctrl+s(保存)     r ...

  9. java多线程同步以及线程间通信详解&消费者生产者模式&死锁&Thread.join()(多线程编程之二)

    本篇我们将讨论以下知识点: 1.线程同步问题的产生 什么是线程同步问题,我们先来看一段卖票系统的代码,然后再分析这个问题: package com.zejian.test; /** * @author ...

  10. 懒下载软件,一行代码连接wifi^_^

    按键盘的windows+R,输入cmd,回车键 设置语句netsh wlan set hostednetwork mode=allow ssid=user key=possword 按回车键 启动语句 ...