Zähler
Du arbeitest an einer neuen Web-App und willst wissen, wie oft jede Funktion aufgerufen wird. Also schreibst du einen Dekorator, der jeder dekorierten Funktion einen Zähler hinzufügt. Diese Information kannst du später nutzen, um herauszufinden, ob es Codestellen gibt, die du entfernen könntest, weil sie von der App nicht mehr verwendet werden.
Diese Übung ist Teil des Kurses
Funktionen in Python schreiben
Anleitung zur Übung
- Rufe die zu dekorierende Funktion auf und gib das Ergebnis zurück.
- Gib die neue dekorierte Funktion zurück.
- Dekoriere
foo()mit dem Dekoratorcounter().
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
def counter(func):
def wrapper(*args, **kwargs):
wrapper.count += 1
# Call the function being decorated and return the result
return ____
# Set count to 0 to initialize call count for each new decorated function
wrapper.count = 0
# Return the new decorated function
____
# Decorate foo() with the counter() decorator
____
def foo():
print('calling foo()')
foo()
foo()
print('foo() was called {} times.'.format(foo.count))