這篇文章主要介紹了Python Property屬性的2種用法,本文分別給出了兩種用法的代碼實例,需要的朋友可以參考下
假設定義了一個類: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
同一屬性的三個函數名要相同哦。。