python基础-可迭代对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bubblelone/article/details/69371405

可直接用于for循环的对象,统称为可迭代对象,Iterable

包括集合数据类型,如list、tuple、set、dict、str,还包括生成器

判断一个对象是否为可迭代对象:

>>>from collections import Iterable
>>>isinstance('abc',Iterable)
True

在不使用for循环情况下,生成器可以用next()函数得到每一个返回值,这种可以使用next()函数的可迭代对象,叫迭代器(Iterator

判断一个对象是否为Iterator对象

>>>from collections import Iterator
>>>isinstance('abc',Iterator)
False
>>>isinstance((x ** 2 for x in range(5)),Iterator)
True

可以使用iter()函数把Iterable转换成Iterator

>>>a  =  iter('abc')
>>>isinstance(a,Iterator)
True

for循环本质上是通过调用next()函数来实现的,当循环列表之类的时候,会先自动把列表转换为Iterator



猜你喜欢

转载自blog.csdn.net/bubblelone/article/details/69371405