python / intermediate
Snippet
Funktions-Dekoratoren
Dekoratoren ermöglichen es, eine andere Funktion zu umhüllen, um deren Verhalten zu erweitern, ohne sie dauerhaft zu verändern. Sie werden oft für Logging, Zugriffskontrolle oder Caching verwendet.
snippet.py
1
2
3
4
5
6
7
8
9
def log_call(func):def wrapper(*args, **kwargs):print(f"Calling {func.__name__}")return func(*args, **kwargs)return wrapper@log_calldef greet(name):return f"Hello, {name}"
Erklärung
1
def log_call(func):
Definiert eine Dekorator-Funktion, die eine andere Funktion als Argument akzeptiert.
2
@log_call
Wendet den Dekorator auf die greet-Funktion an und umhüllt diese damit.