La función next () devuelve el siguiente elemento del iterador.
La sintaxis de next()
es:
siguiente (iterador, predeterminado)
next () Parámetros
- iterador :
next()
recupera el siguiente elemento del iterador - predeterminado (opcional): este valor se devuelve si el iterador se agota (no hay un elemento siguiente)
Valor de retorno de next ()
- La
next()
función devuelve el siguiente elemento del iterador. - Si el iterador se agota, devuelve el
default
valor pasado como argumento. - Si se omite el parámetro predeterminado y el iterador se agota, genera una
StopIteration
excepción.
Ejemplo 1: obtener el siguiente elemento
random = (5, 9, 'cat') # converting the list to an iterator random_iterator = iter(random) print(random_iterator) # Output: 5 print(next(random_iterator)) # Output: 9 print(next(random_iterator)) # Output: 'cat' print(next(random_iterator)) # This will raise Error # iterator is exhausted print(next(random_iterator))
Salida
5 9 cat Traceback (última llamada más reciente): Archivo "python", línea 18, en StopIteration
Una lista es iterable y puede obtener su iterador usando la iter()
función en Python.
Aprender más sobre
- Iteradores de Python
- Función iter () de Python
Recibimos un error de la última declaración en el programa anterior porque intentamos obtener el siguiente elemento cuando no había ningún elemento disponible (el iterador está agotado).
En tales casos, puede dar un valor predeterminado como segundo parámetro.
Ejemplo 2: pasar el valor predeterminado a next ()
random = (5, 9) # converting the list to an iterator random_iterator = iter(random) # Output: 5 print(next(random_iterator, '-1')) # Output: 9 print(next(random_iterator, '-1')) # random_iterator is exhausted # Output: '-1' print(next(random_iterator, '-1')) print(next(random_iterator, '-1')) print(next(random_iterator, '-1'))
Salida
5 9 -1 -1 -1
Nota: Internamente, next()
llama al __next__()
método.