capypad
0 Tage Serie
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
python
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_call
def 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.