Menu
Coddy logo textTech

תרגול מס׳ 4

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

challenge icon

אתגר

בינוני

כתבו דקורטור בשם 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 אונליין