• Map函数:

原型:map(function, sequence),作用是将一个列表映射到另一个列表,

使用方法:

def f(x):

return x**2

l = range(1,10)

map(f,l)

Out[3]: [1, 4, 9, 16, 25, 36, 49, 64, 81]

  • Reduce函数

原型:reduce(function, sequence, startValue),作用是将一个列表归纳为一个输出,
使用方法:

def f2(x,y):

return x+y

reduce(f1,l)

Out[7]: 45

reduce(f2,l,10)

Out[8]: 55

  • Filter函数

原型:filter(function, sequence),作用是按照所定义的函数过滤掉列表中的一些元素,
使用方法:

def f2(x):

return x%2 != 0

filter(f2,l)

Out[5]: [1, 3, 5, 7, 9]

记住:这里的function必须返回布尔值。

  • Lambda函数

原型:lambda <参数>: 函数体,隐函数,定义一些简单的操作,
使用方法:

f3 = lambda x: x**2

f3(2)

Out[10]: 4

还可以结合map、reduce、filter来使用,如:

map(f3,l)

Out[11]: [1, 4, 9, 16, 25, 36, 49, 64, 81]

  • 列表推导式

基本形式:[x for item in sequence <if (conditions)>], 这里x表示对item的操作,

使用方法:

[i**2 for i in l]

Out[12]: [1, 4, 9, 16, 25, 36, 49, 64, 81]

  • 字典设置默认值

python字典中设置条目默认值在有些时候非常有用,例如初始化一个字典的时候。
使用方法:

x = {}

x.setdefault(1,0)

Out[15]: 0

x[2] = 10

x

Out[17]: {1: 0, 2: 10}

x.setdefault(2,1)

Out[18]: 10

转:Python一些特殊用法(map、reduce、filter、lambda、列表推导式等)的更多相关文章

  1. [python基础知识]python内置函数map/reduce/filter

    python内置函数map/reduce/filter 这三个函数用的顺手了,很cool. filter()函数:filter函数相当于过滤,调用一个bool_func(只返回bool类型数据的方法) ...

  2. map/reduce/filter/lambda

    Python内建了map()/reduce()/filter()函数. map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的It ...

  3. Python-函数式编程-map reduce filter lambda 三元表达式 闭包

    lambda 匿名函数,核心是作为算子,处理逻辑只有一行但具有函数的特性,核心用于函数式编程中 三元运算符 其实本质上是if分支的简化版,满足条件返回 if 前面的值,不满足条件返回 else后面的值 ...

  4. python3 map,filter和列表推导式

    num_list = [11,2,-33,10,7,3,5,43] 1.filter  函数 获取num_list大于5的元素,并返回列表 用lambda表达式实现: # 在python2 中 fil ...

  5. python day12 ——1.生成器2.生成器表达式 3.列表推导式

    一.生成器 什么是生成器. 生成器实质就是迭代器. 在python中有三种方式来获取生成器: 1. 通过生成器函数. 2. 通过各种推导式来实现生成器 . 3. 通过数据的转换也可以获取生成器. 1. ...

  6. Python函数式编程,map/reduce,filter和sorted

    什么是函数式编程? 与面向对象编程(Object-oriented programming)和过程式编程(Procedural programming)并列的编程范式. 最主要的特征是,函数是第一等公 ...

  7. python内置函数map/reduce/filter

    python有几个内置的函数很有意 思:map/filter/reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是python列表方法的三架 ...

  8. reduce/filter/map/zip/isinstance/list列表推导式

  9. Python高阶函数_map/reduce/filter函数

    本篇将开始介绍python高阶函数map/reduce/filter的用法,更多内容请参考:Python学习指南 map/reduce Python内建了map()和reduce()函数. 如果你读过 ...

随机推荐

  1. corresponding SQLSTATE values general error

    http://dev.mysql.com/doc/refman/5.7/en/error-messages-server.html B.3 Server Error Codes and Message ...

  2. Apche Kafka 的生与死 – failover 机制详解

    Kafka 作为 high throughput 的消息中间件,以其性能,简单和稳定性,成为当前实时流处理框架中的主流的基础组件. 当然在使用 Kafka 中也碰到不少问题,尤其是 failover ...

  3. ubuntu 64bit arm-linux-gcc: No such file or directory 解决

    通过下面这个解决 ubuntu 64bit  arm-linux-gcc: No such file or directory 安装 sudo apt-get install lsb-core解决 h ...

  4. phpCAS::handleLogoutRequests()关于java端项目登出而php端项目检测不到的测试

    首先,假如你有做过cas,再假如你的cas里面有php项目,这个时候要让php项目拥有cas的sso功能,你需要改造你的项目,由于各人的项目不同,但是原理差不多,都是通过从cas服务器获取sessio ...

  5. BLE Device Monitor

    发现 这东西基本是新工具,依赖CC2540 USB Dongle串口来运作 它能做很多事情,扫描设备,研究设备 经验 监控设备躲在这里 官方获得 跑道CC2541页面里去 http://www.ti. ...

  6. lifecycle of opensource products--x86-64

    x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为“IA ...

  7. QComboBox

    #include "dialog.h" #include "ui_dialog.h" #include <QtCore> #include < ...

  8. leetcode算法

    Given a linked list, return the node where the cycle begins. If there is no cycle, returnnull. Follo ...

  9. TTL和CMOS

    reprint from:http://blog.csdn.net/hemeinvyiqiluoben/article/details/9253249 TTL和COMS电平匹配以及电平转换的方法 一. ...

  10. Java: Difference between ArrayList and LinkedList

    Basically, they are just two different implementations of List interface. LinkedList is implemented ...