Python屬性的使用方法
大家好,又是一個新的周一啊,今天給大家說一下Python的屬性property的使用,raksmart伺服器。
在面向對象編程的時候,我們定義一個Person類
class Person:
def __init__(self):
self.age = 22
這樣寫法能夠方便的訪問屬性age,
p = Person()
print p.age ==>22
p.age = 30
print p.age ==>30
這樣寫起來雖然很簡單,但是沒有參數檢驗(eg,輸入非數值,輸入過大的數值)。
寫過Java的人知道,在Java有一種類叫做實體類(entity,javabean等),它們一般不提供其他複雜的方法只提供簡單的getter和setter等方法。如下例子
Advertisements
同理我們可以按照這個思路來編寫python代碼
這樣寫就完善很多,參數不會被隨意更改了。訪問age的時候需要使用p.get_age(),但這種寫法不夠pythonic,強大的python提供了@property方法,方法如下
這裡面有一點需要注意,就是在自定義類的時候需要使用新式類,即繼承了object,好了,今天就到這裡啦,大家明天見咯。