python可迭代对象的本质探究

python可迭代对象的本质探究

1.迭代器提供一个这样的中间工具,帮助对其进行迭达遍历使用。

2、可迭代对象通过__iter__方法向我们提供一个迭代器,我们在迭代一个可迭代对象时,实际上是先获取该对象提供的一个迭代器,然后通过这个迭代器来一次获取对象中的每一个数据。

换句话说,一个具备__iter__方法的对象,就是一个可迭代对象。

实例

>>>classMyList(object):
...def__init__(self):
...self.container=[]
...defadd(self,item):
...self.container.append(item)
...def__iter__(self):
..."""返回⼀个迭代器"""
...#我们暂时忽略如何构造⼀个迭代器对象
...pass
...
>>>mylist=MyList()
>>>fromcollectionsimportIterable
>>>isinstance(mylist,Iterable)
True
>>>
#这回测试发现添加了__iter__⽅法的mylist对象已经是⼀个可迭代对象了

以上就是python可迭代对象的本质探究,希望对大家有所帮助。更多python学习指路:python基础教程