不知道的生成器

标准库提供了很多生成器,还有些是内置的比如filter(python3里)
按照fluent python书里的表14-x系列,列出了我日常很少用的函数。
note: 有个库叫做more-itertool, 这里的其实比标准库内的更常用

用于过滤的生成器函数

itertools.dropwhile(predicate, it) 处理it,跳过predicate的计算结果为真的元素,
然后产出剩下的各个元素,不再进一步检查。

itertools.takewhile(predicate, it) predicate返回真值时产出对应的元素,然后立即停止,不再继续检查。
这个少用的原因是,这个其实是部分检查,我日常处理的一般是需要全部的。

用于映射的生成器函数

itertools.accumulate(it, [func]) 产出累积的总和;如果提供了 func,那么把前两个元素传 给它,然后把计算结果和下一个元素传给它,以此类推, 最后产出结果.


  转载请注明: 世界的过客 不知道的生成器

 上一篇
coroutine简明介绍 coroutine简明介绍
Fluent Python阅读笔记从可迭代对象说起迭代器使用iter内置函数可以获取迭代器的对象,如果对象实现了__iter__,而__iter__一般返回迭代器,那么对象就是可迭代的。序列都可以迭代,实现了__getitem__方法,并且
2018-07-15
下一篇 
IPython 笔记 IPython 笔记
In [1]: %load_ext autoreload In [2]: %autoreload 2 In [3]: from foo import some_function 之后对some_function的更改会自动reload,
2018-07-08
  目录