一、概念
迭代器是访问可迭代对象的工具,使用 iter(可迭代对象)
返回的对象(实例)即迭代器。迭代器可以使用 next(迭代器)
获取迭代器中的数据。
二、内置函数
iter(iterable):调用_ _iter_ _方法必须返回一个iterator(迭代器)
next(iterator):调用_ _next_ _方法用于返回iterator的下一个值
示例一 :使用迭代器遍历列表元素
list1 = ["张三", "李四", "王麻子"] it = iter(list1) print(next(it)) print(next(it)) print(next(it))
# 输出 张三 李四 王麻子
上述的 iter
函数返回一个迭代器 it
,在循环中使用 next
函数每次访问迭代器中的一条记录,调3次返回列表里面所有的元素,在无法获取下一条记录时,触发 StopIteration
异常。
list1 = ["张三", "李四", "王麻子"]
it = iter(list1)
print(next(it))
print(next(it))
print(next(it))
print(next(it))
运行结果
这样的方式和直接在 if
循环中遍历列表 list1 是异曲同工的,只不过 for
循环已经帮我们处理了迭代器抛出的 StopIteration
异常,而无需我们再去捕获。
list1 = ["张三", "李四", "王麻子"]
for i in list1:
print(i)
输出结果