Sektion 4. Kapitel 8
single
Udfordring: Logning og Timing-Dekoratorer
Stryg for at vise menuen
Opgave
Swipe to start coding
- Tilføj
@functools.wraps(func)over hver wrapper. - I
log_calls, færdiggørlog_messageså den udskriver funktionsnavnet, positionelle argumenter og keyword-argumenter. - I
time_execution, gem starttidspunktet medtime.time()før funktionskaldet. - Efter funktionskaldet, gem sluttidspunktet.
- Beregn og udskriv eksekveringstiden.
- Udskriv både log- og timing-beskederne.
- Dekoratør-rækkefølge:
log_callsyderst,time_executioninderst.
Forventet resultat:
Når du kalder multiply(5, 7), skal outputtet se sådan ud:
Calling function 'multiply' with args=(5, 7), kwargs={}
Function 'multiply' executed in X.XXXXXX seconds
35
Hvor X.XXXXXX er eksekveringstiden formateret med seks decimaler. Funktionen skal returnere 35.
Løsning
Var alt klart?
Tak for dine kommentarer!
Sektion 4. Kapitel 8
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat