Six pages and a sidebar, each lecture step with its screenshot and what it taught; review record RC-008. Refs #14 Refs #15 Refs #16 Refs #17 Refs #18
1.0 KiB
1.0 KiB
Trin 3: tidtagnings-wrapperen
English · Dansk · Bahasa Malaysia
Wrapperen aflæser uret før og efter kaldet og udskriver forskellen:
start = clock()
result = function(*args, **kwargs)
seconds = clock() - start
output(RESULT_TEMPLATE.format(name=function.__name__, seconds=seconds))
return result
Kør den med python -m speed_calc.lecture_steps 3.
Hvad vi lærte
- En dekorator kan køre kode før og efter funktionen uden at ændre funktionen.
- Wrapperen returnerer funktionens resultat, så den dekorerede funktion stadig virker som før.
make_speed_calc_decorator(clock, output)tager uret og outputtet som parametre. Testene giver den et falsk ur, så de kontrollerer præcise værdier og aldrig venter på rigtig tid.- Tekstformatet ligger i
constants.py, det ene sted for konstanter.
