Ćwiczenie nr 4
Lekcja 11 z 12 w kursie Dekoratory w Pythonie w Coddy.
Wyzwanie
ŚredniNapisz dekorator o nazwie restrict_range, który ogranicza argumenty wejściowe funkcji do określonego zakresu.
Ten dekorator powinien przyjmować dwa parametry określające minimalną i maksymalną dozwoloną wartość argumentów wejściowych. Jeśli argumenty wejściowe wykraczają poza określony zakres, dekorator powinien zgłosić wyjątek — ValueError("Input argument out of range").
Oto przykład użycia dekoratora:
@restrict_range(0, 10)
def add(a, b):
return a + b
res = add(6, 5) # returns 11
res = add(3, 11) # raises ValueErrorMożesz założyć, że:
- Wszystkie funkcje dekorowane za pomocą
restricted_rangeprzyjmują jako argumenty wyłącznie liczby. - Wszystkie funkcje dekorowane za pomocą
restricted_rangenie używają**kwargs, tylko*args.
Spróbuj swoich sił
Wszystkie lekcje w sekcji Dekoratory w Pythonie
Poćwicz samodzielnie: Kompilator Python online