Kom igångKom igång gratis

Kontrollera returtypen

Pythons flexibilitet kring datatyper brukar lyftas fram som en av språkets styrkor. Det kan dock ställa till problem om felaktiga datatyper går oupptäckta. Du har bestämt dig för att explicit kontrollera returtyperna i alla dina funktioner, för att säkerställa att koden gör precis det du förväntar dig. För att åstadkomma det ska du skapa en dekorator som kontrollerar om returtypen hos den dekorerade funktionen är korrekt.

Obs: assert är ett nyckelord som du kan använda för att testa om något är sant. Om du skriver assert villkor och villkor är True händer ingenting. Om villkor är False genereras ett fel. Feltypen som genereras kallas AssertionError.

Den här övningen är en del av kursen

Att skriva funktioner i Python

Visa kurs

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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!')
  
Redigera och kör kod