Вот синтаксис для итераторов в Java (несколько похожий синтаксис в C #):
Iterator it = sequence.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
Что имеет смысл. Вот эквивалентный синтаксис в Python:
it = iter(sequence)
while True:
try:
value = it.next()
except StopIteration:
break
print(value)
Я думал, что исключения должны были использоваться только в исключительных обстоятельствах.
Почему Python использует исключения для остановки итерации?