python Property屬性用法(轉)


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM