1. lambda

The lambda operator or lambda function is a way to create small anonymous functions , i.e. functions without a name.

  可以方便的创造一个函数。比如

  

def add(x,y):

    return x+y

  用lambda 写就是

  

lambda x,y:x+y

  非常简洁。这条语句会返回一个函数指针,你可以他赋值,或者配合map ,reduce 等操作。

  比如说想把list [1,2,3,4,5]的每个值的乘2,返回一个list  .

2. map

  lambda配合map用是最方便的了。

    r = map(func, seq)

    map接收一个func 指针,然后把函数作用到seq的每个成员上。

  接上面的例子就是 :

  

map(lambda x:x*2,[1,2,3,4,5])
[2, 4, 6, 8, 10]

    

3. Filtering

  和map 类似 ,只不过他是过滤list,也接受一个func的lambda 表达式,然后如果表达式为真就过滤掉。

    filter(function, list)

  

fib = [0,1,1,2,3,5,8,13,21,34,55]
filter(lambda x: x % 2, fib)
[1, 1, 3, 5, 13, 21, 55]

  直接过滤掉偶数的项。

  比如说我只要>20的数据

  

filter(lambda a : a>20 ,fib)

  分分钟过滤!

4.Reducing

  The function reduce(func, seq) continually applies the function func() to the sequence seq. It returns a single value.

If seq = [ s1, s2, s3, ... , sn ], calling reduce(func, seq) works like this:

  [ func(s1, s2), s3, ... , sn ]

   [ func(func(s1, s2),s3), ... , sn ]

  持续对list 进行func的操作,最终结果是产生一个数值!

  

reduce(lambda x,y: x+y, [47,11,42,13])
113

  比如说这个,依次对47,11 进行相加, 变成 [58,42,13]

    然后再相加 [100,13]

    113

  

最新文章

  1. 支持Cookie并开放了一些特殊设置项的HttpWebClient
  2. [ASP.NET]书店后台开发-模板页
  3. ActionScript 3.0 自写类整理笔记(十三)——Random类
  4. C语言中的回调函数调用过程以及函数指针使用
  5. Android的图片缓存ImageCache(转)
  6. location.hash的摘抄
  7. SqlSever基础 dateadd year,增加五年
  8. Spark on Yarn遇到的几个问题
  9. QT5.7交叉编译安装到arm(好多系列文章)
  10. 001.为什么选择用AngularJs开发?
  11. BFS:noi6044鸣人与佐助
  12. webpack打包非模块化js
  13. FORM当前状态分析
  14. Ubuntu18.10&Ubuntu18.04安装Python虚拟环境
  15. TensorFlow训练MNIST数据集(1) —— softmax 单层神经网络
  16. Xcode全局替换内容,一键Replace
  17. 很多人以为 connect 和 disconnect 应该像 new 和 delete 一样成对出现 这是错误的(只要 sender 或 receiver 其中之一不存在了,connect 会自动失效。QObject::connect 函数是线程安全的)
  18. git 删除 repository
  19. C# Json字符串反序列化
  20. 关于SQLserver的索引的一些脚本

热门文章

  1. 探索ORACLE之ASM概念(完整版)
  2. (第四篇)Linux命令初识之常用系统管理命令
  3. openssl 查看证书
  4. Inno Script - How to make “I Accept the Agreement” radio button on EULA page selected by Default
  5. 鸟哥Linux私房菜(基础篇)——第五章:首次登入与在线求助 man page笔记
  6. Spring Boot中Spring data注解的使用
  7. 自动获取时间html代码
  8. mysql备份及恢复
  9. ACM及各类程序竞赛专业术语
  10. unittest(生成 HTMLTestRunner 模块)