LoslegenKostenlos loslegen

Docstrings beim Dekorieren von Funktionen beibehalten

Dein Freund ist mit einem Problem zu dir gekommen. Sie haben ein paar schicke Dekoratoren geschrieben und sie zu den Funktionen in der Open-Source-Bibliothek hinzugefügt, an der sie gearbeitet haben. Als sie jedoch einige Tests durchführten, stellten sie fest, dass alle Docstrings auf mysteriöse Weise aus ihren dekorierten Funktionen verschwunden sind. Zeige deinem Freund, wie man Docstrings und andere Metadaten beibehält, wenn man Dekoratoren schreibt.

Diese Übung ist Teil des Kurses

Funktionen in Python schreiben

Kurs anzeigen

Interaktive Übung

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

def add_hello(func):
  def wrapper(*args, **kwargs):
    print('Hello')
    return func(*args, **kwargs)
  return wrapper

# Decorate print_sum() with the add_hello() decorator
____
def print_sum(a, b):
  """Adds two numbers and prints the sum"""
  print(a + b)
  
print_sum(10, 20)
# Define the docstring
print_sum_docstring = print_sum.____
print(print_sum_docstring)
Code bearbeiten und ausführen