在python中,類表示具有相同屬性和方法的物件集合,在使用類時,需要先定義類,然後再建立類的例項,通過類的例項就可以訪問類中的屬性和方法了。
在python中,類的定義使用class關鍵字來實現,語法格式如下:
class例如:classname:
'''類的幫助資訊
'''statement
引數說明:
classname:用於指定類名,一般使用大寫字母開頭,如果類名中包括兩個單詞,第二個單詞的首字母也大寫,這種命名方法稱為「駝峰式命名法」。
'''類的幫助資訊
''':用於指定類的文件字串,定義該字串後,在建立類的物件時,輸入類名和左側的括號「(」後,將顯示該資訊。
statement:類體,主要由類變數(或類成員)方法、屬性等定義語句組成。如果在定義類時,沒想好類的具體功能,也可以在類體重直接使用pass語句代替。
classclass語句本身並不建立該類的任何例項,所以在類定義完成以後,可以建立類的例項,即例項化該類的物件,建立類的例項的語法格式如下:geese:
'''大雁類
'''pass
classname(parameterlist)其中,classname是必選引數,用於指定具體的類,parameterlist是可選引數,當建立乙個類時,沒有建立__init()__方法,或者__init__()方法,只有乙個self引數時,parameterlist可以省略。
例如:
wildgoose=geese()在建立類後,可以手動建立乙個__init__()方法,該方法是乙個特殊的方法,類似於j**a語言中的構造方法,每當建立乙個類的新例項時,python都會自動執行他。__init__()方法必須包含乙個self引數,並且必須是第乙個引數,self引數時乙個指向例項本身的引用,用於訪問類中的屬性和方法,在方法呼叫時會自動傳遞實際引數self,因此當__init__()方法只有乙個引數時,在建立例項時,就不需要指定實際的引數了。print(wildgoose)
注:在__init__()方法的名稱中,開頭和結尾處是兩個下劃線,這是乙個約定,旨在區分python預設方法和普通方法。
在__init__()方法中,除了self引數外,還可以自定義一些引數,引數間使用逗號「,」進行分隔。
例如:
classgeese:
'''大雁類
'''def
__init__
(self,beak,wing,claw):
print("
我是大雁類,具有以下特徵:")
(beak)
(wing)
(claw)
beak_1="
緣的基部較高,長度跟頭部的長度基本相等
"wing_1="
翅膀長而尖
"claw_1="
爪子是噗狀的
Python合集之物件導向 六
在派生類中定義 init 方法時,不會自動呼叫基類的 init 方法。例如 class fruit def init self,color 綠色 fruit.color color defharvest self print 水果原來是 fruit.color 的 class def init se...
python之物件導向二
什麼時候用到多型?如果我們需要用到父類的方法的時候而且要修改父類方法的時候,或者想呈現出不同的效果是就會用到多型 這裡舉個小例子 class person object def get name self print 張三 class studens person 繼承自person類 def ge...
python之物件導向(二)
針對類物件定義的屬性 使用賦值語句在class關鍵字下可以定義類屬性 當我們定義了乙個類屬性後,這個屬性雖然歸類所有,但類的所有例項都可以訪問到,當例項並沒有該屬性,所以會繼續查詢class的該屬性 class fairy name jing 定義類屬性 print fairy.name xiann...