在 Python 中,一個對象的特徵(或「你知道的事情」)也稱為屬性(attribute),這應該很好記。動作(或「能夠對對像做的操作」)稱為方法(method)。
如果要建立一個球的 Python 版本或者模型(model),球就是一個對象,它要有屬性和方法。
球的屬性可能包括:
ball.colorball.sizeball.weight
這些都是關於球的描述。
球的方法可能包括:
ball.kickball.throwball.inflate
這些都是可以對球做的操作。
什麼是屬性
屬性就是你所知道(或者可以得出)的關於球的所有方面。球的屬性就是一些信息(數字、字符串等等)。聽起來很熟悉?沒錯,它們就是變量,只不過是包含在對像中的變量。
可以顯示:
print ball.size
可以為它們賦值:
ball.color = 'green'
可以把它們賦給常規的、不是對象的變量:
myColor = ball.color
還可以把它們賦給其他對象的屬性:
myBall.color = yourBall.color
什麼是方法
方法就是可以對對像做的操作,它們是一些代碼塊,可以調用這些代碼塊來完成某個工作。聽起來很熟悉?沒錯,方法就是包含在對像中的函數。
函數能做到的,方法都可以做到,包括傳遞參數和返回值。