首页 > 代码库 > 迭代器
迭代器
迭代器的优点:
1提供了一种不依赖于索引的取值方式
2.惰性计算,节省内存
迭代器的缺点
1,取值不如按照索引取值方便
2,一次性的,只能往后走不能往前走
2无法获得长度
迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退)
可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__iter__()方法)
for 循环本质就是遵循可迭代协议的访问方式
先调用object.__iter__()方法,
dic={0:[1,2,3],1:[4,5,6],2:[7,8,9]} x=dic.__iter__() x=dic[1].__iter__() print(x.__next__()) print(x.__next__()) print(x.__next__())
调用__iter__()方法,就可以转得到迭代器。
迭代器
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。