Python類中的裝飾器在當前類中的聲明與調用

[本文出自天外歸雲的博客園]python

個人Python環境:3.7app

在Python類裏聲明一個裝飾器,並在這個類裏調用這個裝飾器。代碼以下:函數

class Test():
    xx = False

    def __init__(self):
        pass

    def test(func):
        def wrapper(self, *args, **kwargs):
            print(self.xx)
            return func(self, *args, **kwargs)
            
        return wrapper

    @test
    def test_a(self,a,b):
        print(f'ok,{a} {b}')

注意:spa

1. 其中裝飾器test是在類Test中聲明並在其方法test_a中調用code

2. 裝飾器test內層wrapper函數的首參數是selfblog

參考資料:get

1. Python decorators in classes博客

相關文章
相關標籤/搜索