python Property屬性用法

原文:http://www.cnblogs.com/lovemo1314/archive/2011/05/03/2035600.html

假設定義了一個類: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
 同一屬性的三個函數名要相同哦。。


發佈了12 篇原創文章 · 獲贊 21 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章