Files
054-speed-calc-decorator/docs/wiki/Step-2-Decorator-Skeleton-da.md
Tirsvad 0227b109d9 Add wiki in English, Danish and Bahasa Malaysia
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
2026-11-06 13:45:44 +08:00

1.2 KiB

Trin 2: dekoratorens skelet

English · Dansk · Bahasa Malaysia

En dekorator er en funktion, der tager en funktion og returnerer en anden funktion. Dette skelet melder blot kaldet:

def skeleton(function):
    @functools.wraps(function)
    def wrapper(*args, **kwargs):
        print(f"calling {function.__name__}")
        return function(*args, **kwargs)

    return wrapper

Step 2: the decorator skeleton

Kør den med python -m speed_calc.lecture_steps 2.

Hvad vi lærte

  • Funktioner er værdier: du kan give dem videre til andre funktioner og returnere dem.
  • Den indre wrapper er en closure; den husker function, efter at skeleton er returneret.
  • *args, **kwargs lader wrapperen tage imod argumenterne fra enhver funktion og give dem videre.
  • functools.wraps bevarer det oprindelige navn og docstring, så den dekorerede funktion stadig hedder fast_function.
  • @name over en funktion er en genvej til function = name(function).