Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Herausforderung: Erstellen Sie Ihren Decorator | Decorators
Fortgeschrittene Python-Techniken
course content

Kursinhalt

Fortgeschrittene Python-Techniken

Fortgeschrittene Python-Techniken

1. Packen und Entpacken
2. Argumente in Funktionen
3. Funktion als Argument
4. Variablenbereich
5. Decorators

book
Herausforderung: Erstellen Sie Ihren Decorator

Aufgabe

Swipe to start coding

Manchmal ist es notwendig, zu messen, wie lange eine bestimmte Funktion oder ein Codeabschnitt zur Ausführung benötigt. Dies kann erreicht werden, indem die verstrichene Zeit vom Anfang bis zum Ende der Funktion berechnet wird. Wenn Sie jedoch die Ausführungszeit mehrerer Funktionen messen müssen, wäre ein effizienterer Ansatz, einen einzelnen Dekorator zu schreiben und ihn auf diese Funktionen anzuwenden.

Wir entwickeln einen solchen Dekorator und sehen seine Effektivität:

  1. Sie müssen die Parameter definieren, die der Wrapper akzeptieren wird;
  2. Rufen Sie die func-Funktion mit den Argumenten *args und **kwargs auf und weisen Sie sie der Variablen result zu;
  3. In der Zeile return ___ sollten Sie result zurückgeben;
  4. Vervollständigen Sie den Dekorator, indem Sie die wrapper-Funktion zurückgeben;
  5. Wenden Sie den time_it-Dekorator auf die factorial-Funktion an;
  6. Rufen Sie die factorial-Funktion auf (die jetzt mit time_it dekoriert ist) und drucken Sie ihren Rückgabewert aus.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 3
toggle bottom row

book
Herausforderung: Erstellen Sie Ihren Decorator

Aufgabe

Swipe to start coding

Manchmal ist es notwendig, zu messen, wie lange eine bestimmte Funktion oder ein Codeabschnitt zur Ausführung benötigt. Dies kann erreicht werden, indem die verstrichene Zeit vom Anfang bis zum Ende der Funktion berechnet wird. Wenn Sie jedoch die Ausführungszeit mehrerer Funktionen messen müssen, wäre ein effizienterer Ansatz, einen einzelnen Dekorator zu schreiben und ihn auf diese Funktionen anzuwenden.

Wir entwickeln einen solchen Dekorator und sehen seine Effektivität:

  1. Sie müssen die Parameter definieren, die der Wrapper akzeptieren wird;
  2. Rufen Sie die func-Funktion mit den Argumenten *args und **kwargs auf und weisen Sie sie der Variablen result zu;
  3. In der Zeile return ___ sollten Sie result zurückgeben;
  4. Vervollständigen Sie den Dekorator, indem Sie die wrapper-Funktion zurückgeben;
  5. Wenden Sie den time_it-Dekorator auf die factorial-Funktion an;
  6. Rufen Sie die factorial-Funktion auf (die jetzt mit time_it dekoriert ist) und drucken Sie ihren Rückgabewert aus.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 3
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt