close
假設定義了一個類:C,該類必須繼承自object類,有一私有變量_x

class C:
def __init__(self):
self.__x=None
1.現在介紹第一種使用屬性的方法:
在該類中定義三個函數,分別用作賦值、取值和刪除變量(此處表達也許不很清晰,請看示例)

def getx(self):
return self.__x
def setx(self,value):
self.__x=value
def delx(self):
del self.__x
x=property(getx,setx,delx,'')
property函數原型為property(fget=None,fset=None,fdel=None,doc=None),所以根據自己需要定義相應的函數即可。
現在這個類中的x屬性便已經定義好了,我們可以先定義一個C的實例c=C(),然後賦值c.x=100,取值y=c.x,刪除:del c.x。是不是很簡單呢?請看第二種方法

2.下面看第二種方法(在2.6中新增)
首先定義一個類C:

class C:
def __init__(self):
self.__x=None
#下面就開始定義屬性了
@property
def x(self):
return self.__x
@x.setter
def x(self,value):
self.__x=value
@x.deleter
def x(self):
del self.__x

同一屬性的三個函數名要相同。

arrow
arrow
    全站熱搜

    愛在屋簷下 發表在 痞客邦 留言(0) 人氣()