本文實例講述了Python中綁定與未綁定的類別方法。分享給大家供大家參考,具體如下:
像函數一樣,Python中的類別方法也是一種物件。由於既可以透過實例也可以透過類別來存取方法,所以在Python裡有兩種風格:
#未綁定的類別方法:沒有self
##透過類別來引用方法傳回一個未綁定方法物件。要呼叫它,你必須顯示地提供一個實例作為第一個參數。綁定的實例方法:有self
透過實例存取方法傳回一個綁定的方法物件。 Python自動地給方法綁定一個實例,所以我們呼叫它時不用再傳一個實例參數。 兩種方法都是對象,它們可以被傳遞、存入列表等待。兩者運行時都需要一個實例作為第一參數(妤一個self值),但當透過一個實例呼叫綁定方法時Python自動會提供一個。例如我們運行如下的程式碼:class Test: def func(self,message): print message object1=Test() x=object1.func x('绑定方法对象,实例是隐含的') t=Test.func t(object1,'未绑定的方法对象,需要传递一个实例') #t('未绑定的方法对象,需要传递一个实例') #错误的调用