012-迭代器
迭代器
一、概念
迭代器是一个表示数据流的对象;这个对象每次只返回一个元素。pytohn迭代器必须支持__next()__方法;这个方法不接受参数,并总是返回数据流中的下一个元素。如果数据流中没有元素,__next__()
会抛出 StopIteration
异常。迭代器未必是有限的;完全有理由构造一个输出无限数据流的迭代器。
内置的 iter()
函数接受任意对象并试图返回一个迭代器来输出对象的内容或元素,并会在对象不支持迭代的时候抛出 TypeError
异常。Python 有几种内置数据类型支持迭代,最常见的就是列表和字典。如果一个对象能生成迭代器,那么它就会被称作 iterable。