LoslegenKostenlos starten

Den Rückgabetyp prüfen

Pythons Flexibilität bei Datentypen wird oft als Vorteil der Sprache genannt. Selbiges kann jedoch auch problematisch werden, wenn falsche Datentypen unbemerkt bleiben. Du hast entschieden, dass du zur Sicherheit in all deinen Funktionen die Rückgabetypen explizit prüfst, um sicherzustellen, dass sie zurückliefern, was du erwartest. Dafür erstellst du einen Decorator, der prüft, ob der Rückgabetyp der dekorierten Funktion korrekt ist.

Hinweis: assert ist ein Schlüsselwort, mit dem du testen kannst, ob etwas wahr ist. Wenn du assert condition schreibst und condition True ist, passiert nichts. Wenn condition False ist, wirft diese Anweisung einen Fehler. Der Fehlertyp heißt AssertionError.

Diese Übung ist Teil des Kurses

<Kurs>Funktionen in Python schreiben</Kurs>
Kurs ansehen

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

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!')
  
Code bearbeiten und ausführen