Junior — Middle
Můžete vysvětlit koncept dekorátorů v jazyce Python a jejich použití?
sobes.tech AI
Odpověď od AI
Dekorátory v Pythonu jsou funkce, které přijímají jinou funkci a vracejí novou funkci s rozšířeným chováním, aniž by měnily zdrojový kód původní funkce. Často se používají k přidání další logiky, například logování, kontroly přístupu, cachování atd.
Příklad použití:
def decorator(func):
def wrapper(*args, **kwargs):
print("Před voláním funkce")
result = func(*args, **kwargs)
print("Po volání funkce")
return result
return wrapper
@decorator
def say_hello(name):
print(f"Ahoj, {name}!")
say_hello("Svět")
Výstup:
Před voláním funkce
Ahoj, Svět!
Po volání funkce
Decorátory umožňují pohodlně a čitelně upravovat chování funkcí nebo metod.