Sobes.tech
Junior — Middle

Pythonда класс методтору үчүн декоратор деген эмне экенин түшүндүрө аласызбы?

sobes.tech AI

AIден жооп

Pythonда класс методтору үчүн декоратор — бул класс методун кабыл алган жана ошол методдун өзгөртүлгөн версиясын кайтарган функция. Ал методго кошумча жүрүм-турумду кошууга мүмкүндүк берет, анын түпкү кодун өзгөртпөстөн.

Мисалы, декораторду метод чакырууларын каттоо, кирүү укуктарын текшерүү же натыйжаларды кэшке сактоо үчүн колдонсо болот.

Класс методуна жөнөкөй декоратордун мисалы:

class МенинКласым:
    def decor(func):
        def wrapper(self, *args, **kwargs):
            print(f"{func.__name__} методу чакырылды")
            return func(self, *args, **kwargs)
        return wrapper

    @decor
    def метод(self, x):
        return x * 2

объект = МенинКласым()
print(obj.метод(5))  # Жазуу жана натыйжа 10 чыгат

Бул жерде, @decor метод деген методду каптайт жана чакырганда кошумча чыгуу кошот.