python中self參數的用法

  • self代表類的實例,而非類

類的方法與普通的函數只有一個特別的區別——它們必須有一個額外的第一個參數名稱, 按照慣例它的名稱是 self。

 

class Test:
    def prt(self):
        print(self)
        print(self.__class__)


t = Test()
t.prt()

程序輸出如下:
<__main__.Test object at 0x000001FBA7BB7400>
<class '__main__.Test'>

 

從執行結果可以很明顯的看出,self 代表的是類的實例,代表當前對象的地址,而 self.class 則指向類。

self 不是 python 關鍵字,我們把他換成 其他字符也是可以正常執行的:

 

  • 類的私有屬性

__private_attrs:兩個下劃線開頭,聲明該屬性爲私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用 self.__private_attrs可以訪問。

  • 類的方法

在類的內部,使用 def 關鍵字來定義一個方法,與一般函數定義不同,類方法必須包含參數 self,且爲第一個參數,self 代表的是類的實例。

self 的名字並不是規定死的,也可以使用 this,但是最好還是按照約定是用 self。

  • 類的私有方法

__private_method:兩個下劃線開頭,聲明該方法爲私有方法,只能在類的內部調用 ,不能在類的外部調用。self.__private_methods

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章