איטרטור מחזורי
שיעור 12 מתוך 13 בקורס איטרטורים ב-Python של Coddy.
אתגר
בינוניצרו מחלקה ColorCycler שמממשת איטרטור מחזורי עבור רשימת צבעים. למחלקה צריכות להיות המתודות הבאות:
__init__(self, colors): אתחלו את האיטרטור באמצעות רשימת צבעים.__iter__(self): החזירו את אובייקט האיטרטור עצמו.__next__(self): החזירו את הצבע הבא במחזור.
לאחר מימוש המחלקה ColorCycler, השתמשו בה כדי ליצור רצף צבעים על סמך הקלט. התוכנית צריכה:
- ליצור מופע של
ColorCyclerעם הצבעים שבקלט. - ליצור ולהדפיס מספר מוגדר של צבעים מתוך המחזור.
הקלט הבא יסופק:
- מחרוזת של צבעים המופרדים בפסיקים
- מספר שלם שמייצג את מספר הצבעים ליצירה
הדפיסו כל צבע שנוצר בשורה חדשה.
נסו בעצמכם
# קרא את הקלט
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 אונליין