魔法方法二!!!
屬性訪問:在對屬性任何操作時,都會呼叫
有關屬性
__getattr__(self, name)
定義當使用者試圖獲取乙個不存在的屬性時的行為
__getattribute__(self, name)
定義當該類的屬性被訪問時的行為
__setattr__(self, name, value)
定義當乙個屬性被設定時的行為
__delattr__(self, name)
定義當乙個屬性被刪除時的行為
__dir__(self)
定義當 dir() 被呼叫時的行為
__get__(self, instance, owner)
定義當描述符的值被取得時的行為
__set__(self, instance, value)
定義當描述符的值被改變時的行為
__delete__(self, instance)
定義當描述符的值被刪除時的行為
在得到屬性時,先呼叫__getattribute__(self, name)後呼叫__getattr__(self, name)
描述符:描述符就是將某種特殊型別的類(實現下面三個方法其中乙個或多個)的例項指派給另乙個類的屬性
self指當前物件,instance指另乙個類的例項化物件
__get__(self,instance,owner)用於訪問屬性,它返回屬性的值
__set__(self,instance,value)將在屬性分配操作中呼叫,不返回任何內容
_delete__(self,instance)控制刪除操作,不返回任何內容
練習:攝氏度轉為華氏度
class cel:
def __init__(self,value=26.0):
self.value=value;
def __get__(self,instance,owner):
return self.value
def __set__(self,instance,value):
self.value=value
class fah:
def __get__(self,instance,owner):
return instance.cel*10
def __set__(self,instance,value):
instance.cel=value
class temperature:
cel=cel()
fah=fah()
python語法學習第十天 類與物件
python物件導向語言 物件 屬性 方法 oo object oriented物件導向 的特徵 封裝,資訊隱蔽技術 繼承 class a baseclass 多型 類 圖紙 class a 屬性 方法 方法帶引數self,不帶引數self的方法可以從類呼叫不能用例項化物件類呼叫 python中的類...
python學習第十天
class student count 0 def init self,name,age,address self.name name self.age age self.address address student.count 1 k print k w open a.txt w encodin...
python學習第十天
這兩個習題主要是複習各種符號,並且強調編寫長 時要寫一段執行一段修改一段 主要是學習對列表的進一步操作 ten things stuff ten things.split 定義乙個字串變數 用split 函式以空格為分隔標誌分隔字串使之成為列表 more stuff day night song f...