溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中的self用法案例

發(fā)布時間:2020-08-06 10:15:37 來源:億速云 閱讀:135 作者:小新 欄目:編程語言

Python中的self用法案例?這個問題可能是我們?nèi)粘W習或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

在學習如何定義類的過程中,無論是顯式創(chuàng)建類的構(gòu)造方法,還是向類中添加實例方法,都要求將 self 參數(shù)作為方法的第一個參數(shù)。例如,定義如下 Dog 類:

class Dog:
    def __init__(self):
        print("正在執(zhí)行構(gòu)造方法")
    # 定義一個jump()實例方法
    def jump(self):
        print("正在執(zhí)行jump方法")

Python 要求,類方法(構(gòu)造方法和實例方法)中至少要包含一個參數(shù),但并沒有規(guī)定此參數(shù)的名稱(完全可以叫任意參數(shù)名),之所以將類方法的第一個參數(shù)命名為 self,只是 Python 程序員約定俗成的一種習慣,這會使程序具有更好的可讀性。

也就是說,同一個類可以產(chǎn)生多個對象,當某個對象調(diào)用類方法時,該對象會把自身的引用作為第一個參數(shù)自動傳給該方法,換句話說,Python 會自動綁定類方法的第一個參數(shù)指向調(diào)用該方法的對象。如此,Python解釋器就能知道到底要操作哪個對象的方法了。對于構(gòu)造方法來說,self 參數(shù)(第一個參數(shù))代表該構(gòu)造方法正在初始化的對象。

因此,程序在調(diào)用實例方法和構(gòu)造方法時,不需要為第一個參數(shù)傳值。例如,更改前面的 Dog 類,如下所示:

class Dog:
    def __init__(self):
        print(self,"在調(diào)用構(gòu)造方法")
    # 定義一個jump()方法
    def jump(self):
        print(self,"正在執(zhí)行jump方法")
    # 定義一個run()方法,run()方法需要借助jump()方法
    def run(self):
        print(self,"正在執(zhí)行run方法")
        # 使用self參數(shù)引用調(diào)用run()方法的對象
        self.jump()
dog1 = Dog()
dog1.run()
dog2 = Dog()
dog2.run()

感謝各位的閱讀!看完上述內(nèi)容,你們對Python中的self用法案例大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI