Iterator en Python es cualquier tipo de Python que se puede usar con un ‘ for in loop
‘. Las listas, tuplas, diccionarios y conjuntos de Python son ejemplos de iteradores incorporados. Pero no es necesario que un objeto iterador tenga que agotar, a veces puede ser infinito. Este tipo de iteradores se conocen como iteradores infinitos .
Python proporciona tres tipos de iteradores infinitos:
- count (inicio, paso): este iterador comienza a imprimir desde el número de «inicio» e imprime infinitamente . Si se mencionan pasos, los números se omiten; de lo contrario, el paso es 1 de forma predeterminada. Vea el siguiente ejemplo para su uso con
for in
loop.Ejemplo:
# Python program to demonstrate
# infinite iterators
import
itertools
# for in loop
for
i
in
itertools.count(
5
,
5
):
if
i
=
=
35
:
break
else
:
print
(i, end
=
" "
)
Producción:
5 10 15 20 25 30
- ciclo (iterable): este iterador imprime todos los valores en orden desde el contenedor pasado. Reinicia la impresión desde el principio cuando todos los elementos se imprimen de manera cíclica.
Ejemplo 1:
# Python program to demonstrate
# infinite iterators
import
itertools
count
=
0
# for in loop
for
i
in
itertools.cycle(
'AB'
):
if
count >
7
:
break
else
:
print
(i, end
=
" "
)
count
+
=
1
Producción:
A B A B A B A B
Ejemplo #2: Uso de la siguiente función.
# Python program to demonstrate
# infinite iterators
import
itertools
l
=
[
'Geeks'
,
'for'
,
'Geeks'
]
# defining iterator
iterators
=
itertools.cycle(l)
# for in loop
for
i
in
range
(
6
):
# Using next function
print
(
next
(iterators), end
=
" "
)
Producción:
Geeks for Geeks Geeks for Geeks
- repetir (val, num): este iterador imprime repetidamente el valor pasado un número infinito de veces. Si se menciona la palabra clave opcional
num
, se imprime repetidamentenum
varias veces.Ejemplo:
# Python code to demonstrate the working of
# repeat()
# importing "itertools" for iterator operations
import
itertools
# using repeat() to repeatedly print number
print
(
"Printing the numbers repeatedly : "
)
print
(
list
(itertools.repeat(
25
,
4
)))
Producción:
Printing the numbers repeatedly : [25, 25, 25, 25]
Publicación traducida automáticamente
Artículo escrito por nikhilaggarwal3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA