|Implementa un iterador Range propioMedio
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 10:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Implementa un iterador Range propio

Medio10 pts·Funciones
ruleRestricciones
  • radio_button_unchecked
    Implementa __iter__
  • radio_button_unchecked
    Implementa __next__

Enunciado

Implementa la clase MyRange que actúa como un iterador de rango al estilo de range() de Python. La función my_range(start, stop, step) debe retornar una lista con los valores generados por el iterador.

La clase debe implementar el protocolo iterador completo con __iter__ y __next__.

Instrucciones:

  1. Define la clase MyRange con __init__, __iter__ y __next__.
  2. En __next__, avanza el valor actual en step y lanza StopIteration cuando se supera stop.
  3. La función my_range instancia MyRange y retorna list(MyRange(start, stop, step)).
# Ejemplo de uso
print(my_range(0, 10, 2))   # [0, 2, 4, 6, 8]
print(my_range(1, 6, 1))    # [1, 2, 3, 4, 5]
print(my_range(5, 0, -1))   # [] (step negativo no está soportado en esta versión)
Restriccionesexpand_more
  • Dificultad: Medio
  • Completa todos los test cases para obtener los 10 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar print() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Implementa un iterador Range propio — Medio | Coding Challenges · Coding Challenges