все Python 3Встроенные функциипонятие
next
итераторы
Возвращает следующий элемент итератора. default — если итератор исчерпан.
Синтаксис
next(iterator[, default])
next принимает итератор, а не коллекцию: next([1, 2, 3]) — это TypeError, сначала нужен iter(). Без второго аргумента исчерпанный итератор поднимает StopIteration, поэтому либо ловите её, либо передавайте default. Внутри генератора это особенно важно: незамеченная StopIteration там не всплывает наружу, а превращается в RuntimeError (PEP 479), и источник ошибки становится неочевидным.
Примеры
it = iter([1,2,3])
print(next(it)) # → 1
print(next(it)) # → 2
print(next(it)) # → 3
print(next(it, 'end')) # → end
g = (x**2 for x in range(5))
print(next(g), next(g)) # → 0 1
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности