内容来自雪峰的官方网站。

1、把listdictstrIterable变成Iterator可以使用iter()函数

>>> L = iter([1, 2, 3, 4, 5, 7])
>>> L
<list_iterator object at 0x000002014FB66160>
>>> next(L)
1
>>> next(L)
2
>>> next(L)
3
>>> next(L)
4
>>> next(L)
5
>>> next(L)
7
>>> next(L)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
StopIteration

2、Iterator的计算是惰性的,只有在需要返回下一个数据时它才会计算。

Iterator甚至可以表示一个无限大的数据流,例如全体自然数。而使用list是永远不可能存储全体自然数的。

3、函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量。

4、把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。

>>> def add(a, b, f):
... return f(a) + f(b)
...
>>> add(-3, -4, abs)
7

 

5、高阶函数是把函数看成对象,可以传入,还可以返回一个动态创建的函数。

pyDay13的更多相关文章

  1. py-day1-3 python基本数据类型

    数据的基本类型: 数字:

随机推荐

  1. 基于Cocos2d-x学习OpenGL ES 2.0系列——使用VBO索引(4)

    在上一篇文章中,我们介绍了uniform和模型-视图-投影变换,相信大家对于OpenGL ES 2.0应该有一点感觉了.在这篇文章中,我们不再画三角形了,改为画四边形.下篇教程,我们就可以画立方体了, ...

  2. c++11——tuple元组

    tuple是一个固定大小的不同类型值的集合,是泛化的 std::pair.可以当做一通用的结构体使用,不需要创建结构体而又获取结构体的特征,在某些情况下可以取代结构体,使程序简洁.直观. 创建tupl ...

  3. LeetCode——House Robber

    Description: You are a professional robber planning to rob houses along a street. Each house has a c ...

  4. apply的调用 http://bbs.51js.com/thread-82017-1-3.html

    applay 这个是函数Function的方法为什么Array 也能调用这个函数?比如     function a (){           var kk = [];           kk = ...

  5. java.lang.NoSuchMethodException:com.yxq.action.AdminAction.addGoods()《转载》

    java.lang.NoSuchMethodException:com.yxq.action.AdminAction.addGoods()   在学习struts2的时有时会出现此异常,现将其总结如下 ...

  6. JQuery事件e参数的方法preventDefault()取消默认行为

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  7. 几行小代码,将Testlink的xml用例导入至excel

    最近在使用Testlink时,发现导入的用例是xml格式,且没有合适的工具转成excel格式,xml使用excel打开显示的东西也太多,网上也有相关工具转成csv格式的,结果也不合人意. 那求人不如尔 ...

  8. gradle多项目 svn依赖

    当svn有多个子项目且没有根项目的时候,用eclipse拷贝下来是容易出问题的,经常子项目之间的依赖会有问题,还是推荐用IDEA. 操作说明: 如果SVN有 A,B,C,D四个项目,A为web项目,B ...

  9. centos samba搭建

    1.需求: 建立两个用户(zx,zxadmin),zxadmin能访问所有目录,zx只能访问指定目录. 2.安装smb [root@vi /]# yum install samba -y 3.创建用户 ...

  10. Java学习记录-Lambda表达式示例

    List<Integer> userIds=userInfoList.stream().map(m->m.getUserId()).collect(Collectors.toList ...