天天看點

python類中為什麼要self?

在python中建立類時必須有一個self參數,

eg: >>> class miss: ...  

            def mi(self):

...             print "i like python"

... 

>>>love=miss()

>>>love.mi()

i like python

但是如果加入沒有self這一個參數會怎麼樣?

>>> class miss:

...     def mi():

...             print "i like python"

>>>love=miss()

>>>love.mi()

Traceback (most recent call last):

  File "<stdin>", line 1, in <module> TypeError: mi() takes no arguments (1 given)

Python的類的方法的這個特别的參數指代的是對象本身,而按照Python的慣例,它用self來表示 建立了對象love,在調用的過程中實際調用的是love.mi(self)。

  這個我自己的見解,也不知道是否正确,望指導