迭代在Python中指的是遍历容器类型数据结构(如列表、元组、字典和集合)的过程。这个过程通常通过`for...in`循环实现,允许代码重复执行,每次处理集合中的一个元素,并将处理结果用于下一次迭代。
关键概念
可迭代对象(Iterable):存储了元素的一个容器对象,可以通过`__iter__()`方法或`__getitem__()`方法访问。
迭代器(Iterator):遵循迭代器协议的对象,能够记住遍历的位置,并提供`next()`方法来访问集合中的下一个元素,直到所有元素被访问完。
示例
```python
列表是可迭代对象
my_list = [1, 2, 3, 4]
for item in my_list:
print(item)
字符串也是可迭代对象
my_string = "Hello, World!"
for char in my_string:
print(char)
迭代器协议
`__iter__()`方法:返回迭代器对象本身。
`next()`方法:返回集合中的下一个元素,如果迭代结束则引发`StopIteration`异常。
内置可迭代对象类型
有序集合:`list`, `tuple`, `str`, `unicode`
无序集合:`set`
无序集合且具有key-value对应关系:`dict`
注意事项
迭代过程中,每次迭代的结果依赖于上一次迭代的状态。
如果迭代过程中有任何停顿,则不能算作有效的迭代。
希望这能帮助你理解Python中的迭代类型