Menu
Coddy logo textTech

Iterator cykliczny

Lekcja 12 z 13 w kursie Iteratory w Pythonie w Coddy.

challenge icon

Wyzwanie

Średni

Utwórz klasę ColorCycler, która implementuje iterator cykliczny dla listy kolorów. Klasa powinna mieć następujące metody:

  • __init__(self, colors): Zainicjuj iterator listą kolorów.
  • __iter__(self): Zwróć sam obiekt iteratora.
  • __next__(self): Zwróć następny kolor w cyklu.

Po zaimplementowaniu klasy ColorCycler użyj jej do wygenerowania sekwencji kolorów na podstawie danych wejściowych. Program powinien:

  1. Utworzyć instancję ColorCycler z kolorami z danych wejściowych.
  2. Wygenerować i wypisać określoną liczbę kolorów z iteratora.

Dane wejściowe będą zawierać:

  • ciąg kolorów rozdzielonych przecinkami
  • liczbę całkowitą określającą liczbę kolorów do wygenerowania

Wypisz każdy wygenerowany kolor w nowym wierszu.

Spróbuj swoich sił

# Wczytaj dane wejściowe
colors = input().split(',')
num_colors = int(input())

class ColorCycler:
    def __init__(self, colors):
        # TODO: Zainicjalizuj ColorCycler

    def __iter__(self):
        # TODO: Zaimplementuj metodę __iter__

    def __next__(self):
        # TODO: Zaimplementuj metodę __next__

# TODO: Utwórz instancję ColorCycler z kolorami z danych wejściowych

# TODO: Wygeneruj i wypisz określoną liczbę kolorów

# Uwaga: Pamiętaj, aby wypisać każdy kolor w nowym wierszu

Wszystkie lekcje w sekcji Iteratory w Pythonie

Poćwicz samodzielnie: Kompilator Python online