Python迭代器的高级操作,迭代器协议__next__(self)

Python迭代器的高级操作,迭代器协议__next__(self)

迭代器(高级)

什么是迭代器:可以通过next(it) 函数取值的对象就是迭代器

迭代器协议:

迭代器协议是指对象能够使用next函数获取下一项数据,在没有下一项数据时触发一个StopIterator来终止迭代的约定

实现方法:

类内需要有__next__(self)方法来实现迭代器协议

语法:

class MyIterator:

def __next__(self):

迭代器协议的实现

return 数据

什么是可迭代对象

是指能用iter(obj)函数返回迭代器的对象(实例)

可迭代对象内部一定要定义__iter__(self)方法来返回迭代器


最后编辑于:2019/09/27作者: 牛逼PHP

发表评论