Sobes.tech
Junior — Middle

Môžete vysvetliť koncept dekorátorov v jazyku Python a ich použitie?

sobes.tech AI

Odpoveď od AI

Dekorátory v Pythone sú funkcie, ktoré prijímajú inú funkciu a vracajú novú funkciu s rozšíreným správaním, bez zmeny zdrojového kódu pôvodnej funkcie. Často sa používajú na pridanie ďalšej logiky, ako je zaznamenávanie, kontrola prístupových práv, kešovanie atď.

Príklad použitia:

def decorator(func):
    def wrapper(*args, **kwargs):
        print("Pred volaním funkcie")
        result = func(*args, **kwargs)
        print("Po volaní funkcie")
        return result
    return wrapper

@decorator
def say_hello(name):
    print(f"Ahoj, {name}!")

say_hello("Svet")

Výstup:

Pred volaním funkcie
Ahoj, Svet!
Po volaní funkcie

Decorátory umožňujú pohodlnú a čitateľnú úpravu správania funkcií alebo metód.