1

(在 Python 3.2 中)

miters = map(abs,(-1,2,5))
for i in miters:
    print(i)
1
2
5

next(miters)
--> StopIteration

for i in miters:
    print(i)
--> ?? Nothing Happens..

为什么我不能在第二个 for 循环中收到“StopIteration”错误消息?'miter' 已经用尽了,所以如果我再次循环它,我认为会有一个 'StopIteration' ......

谁能告诉我为什么?

4

1 回答 1

4

for循环用于计算StopIteration何时停止。所以它吞下异常并立即停止。

于 2013-02-21T13:29:30.770 回答