Menu
Coddy logo textTech

איטרטור מחזורי

שיעור 12 מתוך 13 בקורס איטרטורים ב-Python של Coddy.

challenge icon

אתגר

בינוני

צרו מחלקה ColorCycler שמממשת איטרטור מחזורי עבור רשימת צבעים. למחלקה צריכות להיות המתודות הבאות:

  • __init__(self, colors): אתחלו את האיטרטור באמצעות רשימת צבעים.
  • __iter__(self): החזירו את אובייקט האיטרטור עצמו.
  • __next__(self): החזירו את הצבע הבא במחזור.

לאחר מימוש המחלקה ColorCycler, השתמשו בה כדי ליצור רצף צבעים על סמך הקלט. התוכנית צריכה:

  1. ליצור מופע של ColorCycler עם הצבעים שבקלט.
  2. ליצור ולהדפיס מספר מוגדר של צבעים מתוך המחזור.

הקלט הבא יסופק:

  • מחרוזת של צבעים המופרדים בפסיקים
  • מספר שלם שמייצג את מספר הצבעים ליצירה

הדפיסו כל צבע שנוצר בשורה חדשה.

נסו בעצמכם

# קרא את הקלט
colors = input().split(',')
num_colors = int(input())

class ColorCycler:
    def __init__(self, colors):
        # TODO: אתחל את ColorCycler

    def __iter__(self):
        # TODO: ממש את המתודה __iter__

    def __next__(self):
        # TODO: ממש את המתודה __next__

# TODO: צור מופע של ColorCycler עם הצבעים מהקלט

# TODO: צור והדפס את מספר הצבעים שצוין

# הערה: זכור להדפיס כל צבע בשורה חדשה

כל השיעורים ביחידה איטרטורים ב-Python

תרגלו בעצמכם: קומפיילר Python אונליין