python学习第四周之迭代器与生成器

mac2022-06-30  36

1.for循环的适用类型:(1)集合数据类型:list,tuple,dict,set,str(2)generator,包括生成器与带yield的generator function。

由此可知,直接用于for循环的对象统称为可迭代对象:Iterable,即可循环的。

使用isinstance()判断一个对象是否是Iterable对象。

使用方法如下:

>>> from collections import Iterable >>> isinstance([],Iterable) True

 2.可被next函数调用的,并不断返回下是一个值的对象,称为迭代器,Iterator

使用isinstance()判断一个对象是否是Iterator对象。

>>> from collections import Iterator >>> isinstance((x for x in range(10)), Iterator) True >>> isinstance([], Iterator) False

 3.生成器一定是迭代器,生成器都是Iterator对象,但list、dict、str虽然是Iterable,却不是Iterator。

把list、dict、str等Iterable变成Iterator可以使用iter()函数:

>>> isinstance(iter([]), Iterator) True >>> isinstance(iter('abc'), Iterator) True

 完

转载于:https://www.cnblogs.com/wuxiaoru/p/11384401.html

最新回复(0)