(在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'...
任何人都可以告诉我原因吗?
答案 0 :(得分:4)
for
循环使用StopIteration
计算何时停止。所以它吞下了异常并立即停止。