Python3 自定义迭代器
2013-11-21 23:18
253 查看
1、迭代器基于下面两个个方法:
(1)__next__ 返回容器的下一个项目
(2)__iter__ 返回迭代器本身
2、当序列遍历完时,将抛出StopIteration异常,所以通过捕获这个异常来停止循环
下面是自定义迭代器的示例代码:
(1)__next__ 返回容器的下一个项目
(2)__iter__ 返回迭代器本身
2、当序列遍历完时,将抛出StopIteration异常,所以通过捕获这个异常来停止循环
下面是自定义迭代器的示例代码:
#encoding:UTF-8 class MyIterator(object): def __init__(self,step): self.step=step def __next__(self): if self.step==0: raise StopIteration self.step-=1 return self.step def __iter__(self): return self for i in MyIterator(6): print(i)输出结果:
>>> ================================ RESTART ================================ >>> 5 4 3 2 1 0 >>>
相关文章推荐
- 从斐波拉契数例的实现看Python的自定义迭代器和装饰器优势
- Python之函数(自定义函数,内置函数,装饰器,迭代器,生成器)
- 利用python自定义完整版迭代器
- Python 3.x自定义迭代器对象
- 开发自定义python 迭代器
- Python __getitem__和自定义的迭代器
- 【Python】在Python中自定义迭代器Iterator
- Guava学习笔记-自定义迭代器
- ubuntu下Python导入自定义模块的方法
- python迭代器,生成器
- Python基础知识之迭代器
- Python 如何在sys.path下包含自定义的路径
- Python:迭代器
- python大作战之迭代器初级篇
- python迭代器
- python 自定义模块的格式
- python在引用其他文件夹下自定义函数
- 2016.4.12Python迭代器,函数式编程,map/reduce高阶函数
- python异常处理(三)---------------抛出异常、自定义异常, 传递异常疑问ing
- Python+Selenium练习篇之18-自定义浏览器窗口大小