Sobes.tech
Junior — Middle

Čo je vlastný dekorátor a ako ho vytvoriť v Pythone?

sobes.tech AI

Odpoveď od AI

Vlastný dekorátor v Pythone je funkcia, ktorá prijíma inú funkciu a vracia novú funkciu s rozšíreným alebo zmeneným správaním.

Príklad vytvorenia jednoduchého dekorátora, ktorý vypíše správu pred a po volaní funkcie:

def my_decorator(func):
    def wrapper(*args, **kwargs):
        print("Začína vykonávanie funkcie")
        result = func(*args, **kwargs)
        print("Dokončené vykonávanie funkcie")
        return result
    return wrapper

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

say_hello("Svet")

Tu @my_decorator aplikuje dekorátor na funkciu say_hello a pridáva ďalší výstup.