Iteradores e iterables
Explore el protocolo de iteradores para crear comportamientos de iteración personalizados.
Iteradores e iterables es una lección gratuita de Python For Kids en CoddyKit. Esta es la lección 5 de 5. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python For Kids, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python For Kids incluye 5 lecciones en total.
Introducción a los iteradores y objetos iterables
Los iteradores y los objetos iterables son conceptos fundamentales de Python que permiten trabajar con secuencias de datos. Son la base de los bucles, las comprensiones y los generadores.
En esta lección, aprenderá cómo funcionan los iteradores y los objetos iterables, y cómo crear sus propios iteradores.

¿Qué es un objeto iterable?
Un objeto iterable es cualquier objeto de Python que se puede recorrer mediante un bucle for. Algunos ejemplos son las listas, las tuplas, los conjuntos y los diccionarios.
# Example of an iterable
my_list = [1, 2, 3]
for item in my_list:
print(item) # Outputs: 1, 2, 3¿Qué es un iterador?
Un iterador es un objeto que representa un flujo de datos. Implementa los métodos __iter__() y __next__().
# Example of an iterator
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator)) # Outputs: 1
print(next(iterator)) # Outputs: 2
print(next(iterator)) # Outputs: 3Diferencia entre iterables e iteradores
Los iterables se pueden recorrer (por ejemplo, las listas), mientras que los iteradores producen un elemento cada vez mediante el método next(). Un iterable se convierte en un iterador cuando se pasa a la función iter().
Creación de iteradores personalizados
Puede crear iteradores personalizados definiendo una clase con los métodos __iter__() y __next__():
# Custom iterator example
class Counter:
def __init__(self, start, end):
self.current = start
self.end = end
def __iter__(self):
return self
def __next__(self):
if self.current > self.end:
raise StopIteration
self.current += 1
return self.current - 1
counter = Counter(1, 5)
for number in counter:
print(number) # Outputs: 1, 2, 3, 4, 5Uso de la función iter()
La función iter() devuelve un objeto iterador a partir de un iterable:
# Using iter() on a list
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator)) # Outputs: 1Gestión de StopIteration
Cuando un iterador se agota, genera una excepción StopIteration. Así es como Python señala el final de una secuencia.
# Handling StopIteration
my_list = [1, 2, 3]
iterator = iter(my_list)
while True:
try:
print(next(iterator))
except StopIteration:
breakIteradores frente a generadores
Los generadores son una forma más sencilla de crear iteradores. Implementan automáticamente los métodos __iter__() y __next__().
# Example of a generator as an iterator
def my_generator():
yield 1
yield 2
yield 3
for value in my_generator():
print(value) # Outputs: 1, 2, 3Errores comunes con iteradores
Estos son algunos errores que debe evitar:
- Olvidar implementar
__iter__()y__next__()en iteradores personalizados. - No gestionar correctamente las excepciones
StopIteration. - Confundir los iteradores con los iterables.
¿Qué hemos aprendido?
En esta lección, ha aprendido:
- La diferencia entre iterables e iteradores.
- Cómo utilizar
__iter__()y__next__()para crear iteradores personalizados. - Cómo utilizar la función
iter()y gestionar las excepcionesStopIteration. - Cómo simplifican los generadores la creación de iteradores.
¡Buen trabajo! Pasemos al siguiente tema.

Preguntas frecuentes
¿La lección «Iteradores e iterables» es gratis?
Sí — el texto completo de «Iteradores e iterables» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python For Kids, actualiza a CoddyKit PRO. El curso de Python For Kids incluye 5 lecciones en total.
¿Qué aprenderé en «Iteradores e iterables»?
Explore el protocolo de iteradores para crear comportamientos de iteración personalizados. Practicas Python For Kids con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Python For Kids?
No se requiere experiencia previa. Python For Kids en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 5 de 5.
¿Cuánto tiempo toma la lección «Iteradores e iterables»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Python For Kids?
Sí. Cada lección de Python For Kids incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Decoradores
- Generadores
- Gestores de contexto (sentencias with)
- Comprensiones (de listas, conjuntos y diccionarios)
- Iteradores e iterables