python迭代器

迭代对象:一 集合数据类型,如list,str,set,dict,tuple。

迭代器:

二 generator,如生成器和带yield的generator function ,这些可以直接作用于for循环的对象统称为可迭代对象

1可直接作用于for循环的数据类型有以下几种

迭代器:可以被next()函数调用并不断返回下一个值得对象称为迭代器。

a.集合数据类型list、tuple、dict、set、str

迭代器的判断:

b.generator,包括生成器和带yield的generator fuinction

利用ipython模块,

这些可以直接作用于for循环的对象统称为可迭代对象,Iteratable

[1]: from collections import Iterator

可以用isinstance()判断是不是可迭代对象:

[2]: Isinstance(x for x in range(10),Iterator)

得先导入Iterable模块(在cmd中)

生成器表达式:类似列表解析语法,只不过把列表解析的[]换成()

from collections import Iterable

生成器一定是迭代器,但是迭代器不一定是生成器。

isinstance([],Iterable) 返回True

生成器表达式能做的事情列表解析基本都能处理,只不过在需要处理的序列比较大时,列表解析比较费内存。

isinstance({},Iterable) 返回True

验证是否可以迭代我们可以使用collections中的Iterable模块,操作如下:

2.可以用被next()函数调用并且不断返回下一个值的对象成为迭代器Iterator

本文由金沙官网线上发布于编程,转载请注明出处:python迭代器

您可能还会对下面的文章感兴趣: