Junior — Middle
Vai jūs varat izskaidrot, kas ir dekorators klasēm Python?
sobes.tech AI
Atbilde no AI
Python klases metožu dekorators ir funkcija, kas pieņem klases metodi un atgriež tās modificētu versiju. Tas ļauj pievienot papildu uzvedību metodei, nemainot tās avota kodu.
Piemēram, var izmantot dekoratoru, lai reģistrētu metodes izsaukumus, pārbaudītu piekļuves tiesības vai kešētu rezultātus.
Vienkārša klases metodes dekoratora piemērs:
class ManaKlase:
def dekorators(func):
def wrapper(self, *args, **kwargs):
print(f"Metodes {func.__name__} izsaukums")
return func(self, *args, **kwargs)
return wrapper
@dekorators
def metode(self, x):
return x * 2
obj = ManaKlase()
print(obj.metode(5)) # Izvadīs ziņojumu un rezultātu 10
Šeit, @dekorators ietver metodi metode un pievieno papildu izvadi, izsaukuma laikā.