1、子類(lèi)可以繼承父類(lèi),同樣,父類(lèi)也可以繼承自己的父類(lèi),一層一層地繼承。
class A: def have(self): print('I hava an apple') class B(A): pass class C(B): pass
2、如果想判斷一個(gè)類(lèi)別是否是另一個(gè)類(lèi)別的子類(lèi)別,可以使用內(nèi)置函數(shù)issubclass()。
>>> issubclass(C, A) True >>> issubclass(B, A) True >>> issubclass(C, B) True
知識(shí)點(diǎn)擴(kuò)展:
繼承的定義
class Person(object): # 定義一個(gè)父類(lèi) def talk(self): # 父類(lèi)中的方法 print("person is talking....") class Chinese(Person): # 定義一個(gè)子類(lèi), 繼承Person類(lèi) def walk(self): # 在子類(lèi)中定義其自身的方法 print('is walking...') c = Chinese() c.talk() # 調(diào)用繼承的Person類(lèi)的方法 c.walk() # 調(diào)用本身的方法 # 輸出 person is talking.... is walking...
構(gòu)造函數(shù)的繼承
class Person(object): def __init__(self, name, age): self.name = name self.age = age self.weight = 'weight' def talk(self): print("person is talking....") class Chinese(Person): def __init__(self, name, age, language): # 先繼承,在重構(gòu) Person.__init__(self, name, age) #繼承父類(lèi)的構(gòu)造方法,也可以寫(xiě)成:super(Chinese,self).__init__(name,age) self.language = language # 定義類(lèi)的本身屬性 def walk(self): print('is walking...') class American(Person): pass c = Chinese('bigberg', 22, 'Chinese')
到此這篇關(guān)于python類(lèi)的繼承鏈實(shí)例分析的文章就介紹到這了,更多相關(guān)python類(lèi)的繼承鏈分析內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標(biāo)簽:日照 雙鴨山 赤峰 克拉瑪依 貴州 金華 臨汾 陽(yáng)泉
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python類(lèi)的繼承鏈實(shí)例分析》,本文關(guān)鍵詞 python,類(lèi),的,繼承,鏈,實(shí)例分析,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。