Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Herausforderung: Logging- und Timing-Dekoratoren | Mastering Python Decorators
Fortgeschrittene Python-Techniken
Abschnitt 4. Kapitel 8
single

single

Herausforderung: Logging- und Timing-Dekoratoren

Swipe um das Menü anzuzeigen

Aufgabe

Wischen, um mit dem Codieren zu beginnen

  • Fügen Sie @functools.wraps(func) über jeden Wrapper ein.
  • Vervollständigen Sie in log_calls die Variable log_message, sodass der Funktionsname, die Positionsargumente und die Schlüsselwortargumente ausgegeben werden.
  • Speichern Sie in time_execution vor dem Funktionsaufruf die Startzeit mit time.time().
  • Speichern Sie nach dem Funktionsaufruf die Endzeit.
  • Berechnen und geben Sie die Ausführungszeit aus.
  • Geben Sie sowohl die Log- als auch die Zeitmessungsnachrichten aus.
  • Reihenfolge der Dekoratoren: log_calls außen, time_execution innen.

Erwartetes Ergebnis:

Wenn Sie multiply(5, 7) aufrufen, sollte die Ausgabe wie folgt aussehen:

Calling function 'multiply' with args=(5, 7), kwargs={}
Function 'multiply' executed in X.XXXXXX seconds
35

Wobei X.XXXXXX die Ausführungszeit auf sechs Dezimalstellen formatiert ist. Die Funktion sollte 35 zurückgeben.

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 4. Kapitel 8
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt