完成迭代器后,下一个方法将引发StopIteration。此异常不视为错误。
我们重新编写给定代码,如下所示以捕获异常并知道其类型。
import sys try: z = [5, 9, 7] i = iter(z) print i print i.next() print i.next() print i.next() print i.next() except Exception as e: print e print sys.exc_type
输出结果
<listiterator object at 0x0000000002AF23C8> 5 9 7 <type 'exceptions.StopIteration'>