迭代器(高级)
什么是迭代器:可以通过next(it) 函数取值的对象就是迭代器
迭代器协议:
迭代器协议是指对象能够使用next函数获取下一项数据,在没有下一项数据时触发一个StopIterator来终止迭代的约定
实现方法:
类内需要有__next__(self)方法来实现迭代器协议
语法:
class MyIterator:
def __next__(self):
迭代器协议的实现
return 数据
什么是可迭代对象
是指能用iter(obj)函数返回迭代器的对象(实例)
可迭代对象内部一定要定义__iter__(self)方法来返回迭代器
发表评论