Python 中的迭代器
Python 中的迭代器
迭代是用于数据处理和数据转换的关键工具之一。当处理大型数据集以及不可能或不能高效地将整个数据集带入内存时,迭代尤其有用。迭代器提供了一种将数据一次一项地带入内存的方法。
创建迭代器的方法是用一个单独的类定义迭代器,并实现 __iter__ 和 __next__ 等特殊方法。但还有一种使用 yield 操作创建迭代器的新方法,即生成器。接下来,我们将首先学习迭代器。讲完迭代器后再讲生成器。
迭代器是用来迭代其他对象的对象。迭代器可以迭代的对象称为可迭代对象。理论上,这两个对象是不同的,但可以在可迭代对象类中实现迭代器。这虽然在技术上是可行的,但不建议这样做(稍后会讲到原因)。我们将通过一个例子来讨论为什么这种方法不是一种好的设计方法。在下面的代码片段,是在 Python 中使用 for 循环进行迭代的示例:
#例一:在一个列表上迭代
for x in [1, 2, 3]:
print(x)
#例二:在一个字符串上迭代
for x in "Hello, world":
print(x, end="")
print(' ')
#例三:在一个字典上迭代
week_days = {
1: '星期一', 2: '星期二', 3: '星期三', 4: '星期四', 5: '星期五', 6: '星期六', 7: '星期日'}
for key in week_days:
print(key, week_days[key])
#例四:在一个文件上迭代,输出文件的每一行
for row

最低0.47元/天 解锁文章
8095

被折叠的 条评论
为什么被折叠?



