Рассмотрим следующий код Python:
b = [1,2,3,4,5,6,7]
a = iter(b)
for x in a :
if (x % 2) == 0 :
print(next(a))
Который будет печатать 3, 5 и 7. Является ли использование next
для итерируемой переменной надежной конструкции (вы можете предположить, что исключение StopIteration не является проблемой или будет обработано), или выполняет модификацию итератора зацикленные внутри цикла представляют собой нарушение какого-то принципа?