在Python编程中,可迭代对象(Iterable)和迭代器对象(Iterator)是两个重要的概念。它们提供了一种在循环中访问元素的方式,但它们在实现和使用上有所不同。
可迭代对象是指那些可以被迭代的对象,也就是可以使用for循环进行遍历的对象。常见的可迭代对象包括字符串、列表、元组、字典等。我们可以通过内置函数iter()
将可迭代对象转换为迭代器对象。
迭代器对象是一种实现了迭代器协议的对象。迭代器协议要求对象实现两个方法:__iter__()
和__next__()
。__iter__()
方法返回迭代器对象本身,而__next__()
方法返回可迭代对象中的下一个元素。当没有更多元素可供迭代时,__next__()
方法应该引发StopIteration
异常。
让我们通过一些示例代码来更好地理解可迭代对象和迭代器对象的概念:
# 示例 1: 可迭代对象
my_list = [1, 2