תרגול מס׳ 4
שיעור 11 מתוך 12 בקורס דקורטורים ב-Python של Coddy.
אתגר
בינוניכתבו דקורטור בשם restrict_range שמגביל את הארגומנטים של פונקציה לטווח מסוים.
הדקורטור צריך לקבל שני פרמטרים שמציינים את הערכים המזעריים והמרביים המותרים לארגומנטים. אם הארגומנטים מחוץ לטווח שצוין, הדקורטור צריך להעלות חריגה - ValueError("Input argument out of range").
הנה דוגמה לשימוש בדקורטור:
@restrict_range(0, 10)
def add(a, b):
return a + b
res = add(6, 5) # returns 11
res = add(3, 11) # raises ValueErrorאפשר להניח ש:
- כל הפונקציות שעוטרו באמצעות
restricted_rangeמשתמשות במספרים בלבד כארגומנטים. - כל הפונקציות שעוטרו באמצעות
restricted_rangeאינן משתמשות ב־**kwargs, אלא רק ב־*args.
נסו בעצמכם
כל השיעורים ביחידה דקורטורים ב-Python
תרגלו בעצמכם: קומפיילר Python אונליין