1.11 迭代器
Posted lihouqi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.11 迭代器相关的知识,希望对你有一定的参考价值。
1. 迭代器定义
1. 迭代器是访问集合内元素的方式,迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束
2. 迭代器仅是一容器对象,它有两个基本方法
1)next方法:返回容器的下一个元素
2)__iter__方法:返回迭代器自身
a = iter([1,2,]) #生成一个迭代器
print(a.__next__())
print(a.__next__())
print(a.__next__()) #在这一步会引发 “StopIteration” 的异常
2. 生成器和迭代器之间的区别
在使用生成器时,我们创建一个函数;在使用迭代器时,我们使用内置函数iter()和next()。 在生成器中,我们使用关键字‘yield’来每次生成/返回一个对象。 生成器中有多少‘yield’语句,你可以自定义。 每次‘yield’暂停循环时,生成器会保存本地变量的状态。而迭代器并不会使用局部变量,它只需要一个可迭代对象进行迭代。 使用类可以实现你自己的迭代器,但无法实现生成器。 生成器运行速度快,语法简洁,更简单。 迭代器更能节约内存。
以上是关于1.11 迭代器的主要内容,如果未能解决你的问题,请参考以下文章