python可迭代对象和迭代器
来源:互联网 发布:数据安全管理制度 编辑:程序博客网 时间:2024/05/21 17:36
1. iter函数
iter 函数只是调用对象的__iter__
方法,这个方法按照协议会返回一个迭代器,使得for循环这样的语法结构能够进行下去。
2. 可迭代对象
一个对象实现了__iter__方法,就是可迭代的,可以使用for循环访问对象中的每个元素,其实质是调用iter函数使对象返回一个迭代器,再使用迭代器进行循环。
3. 迭代器:实现了__next__()方法,调用该方法时,直到对象没有可调用的元素就返回异常StopIteration
>>> st = 'Hello'>>> for i in st:... print(i)... Hello>>> next(st)Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: 'str' object is not an iterator>>> st = iter(st)>>> next(st)'H'>>> next(st)'e'>>> next(st)'l'>>> next(st)'l'>>> next(st)'o'>>> next(st)Traceback (most recent call last): File "<stdin>", line 1, in <module>StopIteration
>>> class Fibs:... def __init__(self,n=10):... self.a = 0... self.b = 1... self.n = n... def __iter__(self):... return self... def __next__(self):... self.a,self.b = self.b,self.a+self.b... if self.a > self.n:... raise StopIteration... else:... return self.a... >>> f = Fibs(20)>>> for i in f:... print(i)... 11235813
阅读全文
0 0
- python可迭代对象和迭代器对象
- python可迭代对象和迭代器
- Python 可迭代的对象、迭代器和生成器
- Python 可迭代的对象、迭代器和生成器
- python-6-如何实现可迭代对象和迭代器对象?
- Python 可迭代对象 迭代器
- python 3-1 如何实现可迭代对象iterable和迭代器对象iterator,__iter__,__getitem__
- python 3-2 如何实现可迭代对象和迭代器对象(2) BookIterable/BookIterator
- python高效编程技巧8(如何实现可迭代对象和迭代器对象)
- Python高级编程--如何实现可迭代对象和迭代器对象?(未完待续)
- Python 可变对象和迭代器 注意点
- Python中可迭代对象、迭代器和生成器相关
- Python类型和对象
- Python类型和对象
- Python变量和对象
- Python类和对象
- Python 类和对象
- Python 类和对象
- C语言实验——求两个整数之和
- AssetBundel打包策略
- SharePoint REST API
- 主成分分析PCA
- 打包策略
- python可迭代对象和迭代器
- Docker 架构
- U3D中使用socket
- Python快速计算Fibonacci数列中第n项的方法
- Fragment
- 文章标题
- unity开发中使用 通讯协议
- 计算机系统-->计算机系统漫游
- 区间DP 最大面积最小的三角形划分