python迭代器协议支持的两种方法

迭代协议是指容器类需要包含一种特殊的方法,即__iter__()方法。

方法

Python迭代器(_Iterators_)erators_)对象需要支持以下两种方法。

1、iter(),返回迭代对象本身。它用于for和in。

2、next(),返回迭代器的下一个值。若无下一个值可返回,则应抛出StopIteration异常。

实例

classCounter(object):
def__init__(self,low,high):
self.current=low
self.high=high

def__iter__(self):
returnself

def__next__(self):
#返回下一个值直到当前值大于high
ifself.current>self.high:
raiseStopIteration
else:
self.current+=1
returnself.current-1

以上就是python迭代器协议支持的两种方法,希望对大家有所帮助。更多ps学习指路:ps教程

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。