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 迭代器的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在片段着色器中使用先前渲染的结果?

FastAPI Web框架 [1.11]

FastAPI Web框架 [1.11]

VSCode自定义代码片段——CSS选择器

Zend Framework 1.11:如何自动加载使用命名空间的类

VSCode自定义代码片段6——CSS选择器