如果在Java中定义类,我们经常使用类来封装一些属性,比如说,Student类中,有firstname 和 lastname,同时的,为了能访问和修改这个属性,我们还会设置set和get方法,但是,在Python中,我们可以使用@property的方法来将一个方法变成一个类属性,并且,利用同样的方式,来生成set和get方法,如下代码:
########################################################################
:
#----------------------------------------------------------------------
:
first_name
last_name
#----------------------------------------------------------------------
property
:
Return the full name
)
在以上的代码中,我们定义了一个full name属性,是由first name和last name来生成的,这样的好处在于,我们可以在不添加现有属性的情况下,添加一个处理过的属性,并且可以在这个
方法中增加复杂的逻辑,并且,这个属性在没有定义setter和getter的方法前,只能被访问而不能被修改,如下代码:
>> person = Person("Mike", "Driscoll")
_name
'Mike Driscoll'
_name
'Mike'
:
>
attribute
from decimal import Decimal
########################################################################
:
#----------------------------------------------------------------------
:
None
#----------------------------------------------------------------------
property
:
The fee property - the getter
_fee
#----------------------------------------------------------------------
setter
:
The setter of the fee property
:
)
:
value
#----------------------------------------------------------------------
:
)