Python 可迭代类型
在Python中的一个可迭代对象,可以没有、有一个或几个元素。一个可迭代对象能够根据用户的需要返回其元素。
由于这种能力,我们可以使用 Python for 循环来迭代一个可迭代对象。
在现实中,range() 方法是可迭代的,因为它的输出可以被迭代。
代码
输出
Python中的字符串也是一个可迭代对象,因为我们可以用for循环来迭代它的元素。
代码
输出
迭代表包括列表、图元和字典,因为它们可以被循环使用。作为一个例子。
代码
输出
一般的规则是,如果一个人可以在任何东西上循环,那么它就是可迭代的。
什么是迭代器
只有可迭代的东西才有可能被迭代。而进行迭代的组件被称为迭代器。
iter()方法从给定的可迭代对象中获得一个可迭代对象。作为一个例子。
代码
输出
一旦我们有了迭代器对象,我们就可以使用 next() 方法从迭代器中获取下一个项目。
代码
输出
next()方法每次使用都会给出迭代器中的下一个项目。作为一个例子。
代码
输出
如果没有更多的元素,我们调用next()函数,我们会得到一个异常。
代码
输出
迭代器是一个状态操作符。它表示在我们从一个特定的迭代器中取出一个项目后,它就不再可用。
换句话说,在我们对给定的迭代器进行循环之后,它就变成了空的。如果我们对它进行进一步的迭代,它将什么也不返回。
因为一个迭代器可以被迭代,所以在 Python 中它也被认为是一个可迭代的对象。这是很令人困惑的。作为一个例子。
代码
输出
如果我们调用 iter() 方法并向它提供一个可迭代的数据,它将返回一个相同的迭代器。
因此,我们已经学到了不少关于Python中迭代器的东西。