Python Glossary English

все 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Сообщить о неточности