Zacznij terazZacznij za darmo

Sprawdzanie typu zwracanej wartości

Elastyczność Pythona w kwestii typów danych jest często wymieniana jako jedna z zalet tego języka. Może jednak powodować problemy, gdy nieprawidłowe typy danych pozostają niezauważone. Postanowiłeś jawnie sprawdzać typy zwracanych wartości we wszystkich swoich funkcjach, żeby mieć pewność, że kod działa dokładnie tak, jak tego oczekujesz. W tym celu stworzysz dekorator, który weryfikuje, czy typ zwracanej wartości udekorowanej funkcji jest poprawny.

Uwaga: assert to słowo kluczowe, które pozwala sprawdzić, czy dany warunek jest spełniony. Jeśli wpiszesz assert warunek i warunek ma wartość True, instrukcja nie robi nic. Jeśli warunek ma wartość False, zostaje zgłoszony błąd typu AssertionError.

To ćwiczenie jest częścią kursu

Pisanie funkcji w Pythonie

Zobacz kurs

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

def returns_dict(func):
  # Complete the returns_dict() decorator
  def wrapper(____):
    result = ____
    assert type(result) == dict
    return result
  ____
  
@returns_dict
def foo(value):
  return value

try:
  print(foo([1,2,3]))
except AssertionError:
  print('foo() did not return a dict!')
  
Edytuj i uruchom kod