Junior — Middle
Можете ли објаснити шта је декоратор за методе класе у Python-у?
sobes.tech АИ
Одговор од АИ
Dekorator za metode klase u Pythonu je funkcija koja prihvata metodu klase i vraća modifikovanu verziju te metode. Omogućava dodavanje dodatnog ponašanja metodi bez izmene njenog izvornog koda.
Na primer, može se koristiti dekorator za logovanje poziva metode, proveru prava pristupa ili keširanje rezultata.
Primer jednostavnog dekoratora za metodu klase:
class MojaKlasa:
def dekorator(func):
def wrapper(self, *args, **kwargs):
print(f"Poziv metode {func.__name__}")
return func(self, *args, **kwargs)
return wrapper
@dekorator
def metoda(self, x):
return x * 2
obj = MojaKlasa()
print(obj.metoda(5)) # Ispisaće poruku i rezultat 10
Ovde, @dekorator obavija metodu metoda, dodajući dodatni ispis prilikom poziva.