English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Python

Контроль потоков в Python

Функции Python

Типы данных Python

Операции с файлами в Python

Объекты и классы в Python

Даты и время в Python

Продвинутые знания Python

Руководство по Python

Метод использования next() в Python и примеры

Внутренние функции Python

Функция next() возвращает следующий элемент из итератора.

грамматика next()

next(iterator, default)

параметр next()

  • iterator- next() отв итератореполучение следующего элемента

  • default (可选)- если итератор исчерпан, то возвращается это значение (нет следующего элемента)

Значение, возвращаемое next()

  • Функция next() возвращает следующий элемент из итератора.

  • Если итератор исчерпан, возвращает значение по умолчанию, переданное в качестве параметра.

  • если он опущенЗначение по умолчаниюПараметр (default) иИтераторыЕсли итератор исчерпан, будет вызван исключение StopIteration.

Пример 1: Получение следующего элемента

random = [5, 9, 'cat']
# Преобразование списка в итератор
random_iterator = iter(random)
print(random_iterator)
# Вывод: 5
print(next(random_iterator))
# Вывод: 9
print(next(random_iterator))
# Вывод: 'cat'
print(next(random_iterator))
# это вызовет ошибку
# iterator исчерпан
print(next(random_iterator))

Результат вывода

<list_iterator object at 0x7feb49032b00>
5
9
cat
Traceback (most recent call last):
  File "python", line 18, in <module>
StopIteration

Список является  исlicableВы можете использовать функцию iter() в Python, чтобы получить его  Итераторы.

Узнайте больше о

Мы получили ошибку из последнего предложения программы выше, потому что мы пытаемся получить следующее значение, когда его нет (итератор исчерпан).

В этом случае, вы можете предоставитьЗначение по умолчаниюЗначение в качестве второго параметра.

Пример 2: Передача значения по умолчанию в next()

random = [5, 9]
# Преобразование списка в итератор
random_iterator = iter(random)
# Вывод: 5
print(next(random_iterator, '-1'))
# Вывод: 9
print(next(random_iterator, '-1'))
# iterator исчерпан
# Вывод: '-1'
print(next(random_iterator, '-1'))
print(next(random_iterator, '-1'))
print(next(random_iterator, '-1'))

Результат вывода

5
9
-1
-1
-1

Внимание: вВнутри, вызов next() вызывает метод __next__().

Внутренние функции Python