欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文輕松了解Python中類的繼承

 更新時(shí)間:2022年06月23日 12:58:45   作者:hello_JeremyWang  
類的繼承可以看成對(duì)類的屬性和方法的重用,能夠大大的減少代碼量,下面這篇文章主要給大家介紹了關(guān)于Python中類的繼承的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

1. 單繼承

繼承的主要作用是實(shí)現(xiàn)代碼的重用。繼承使得子類擁有父類的方法和屬性。
直接來(lái)看一個(gè)例子吧。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

從上面的代碼可以看出,在編寫dog類的時(shí)候,我們并沒(méi)有重寫eat和drink兩個(gè)方法。我們只需要在dog后面的括號(hào)中加上父類的名字即可。當(dāng)子類繼承了父類,子類就可以直接使用父類中的方法了。在本例中,goudan可以直接使用animal類中的eat和drink兩個(gè)方法。
而且一個(gè)神奇的事情是,繼承是具有傳遞性的。子類擁有父類的方法和屬性,同時(shí)也具有父類的父類所具有的屬性。

2. 繼承中的方法重寫

有時(shí)候,父類中的方法并不能完成滿足子類的需求。這時(shí)候我們就需要方法重寫了。子類方法重寫一般有兩種情況:

  1. 覆蓋父類的方法
  2. 對(duì)父類的方法進(jìn)行擴(kuò)展

一種簡(jiǎn)單的方法是直接重寫相應(yīng)的方法。下面這個(gè)例子就是重寫了drink這個(gè)方法。當(dāng)使用goudan調(diào)用drink這個(gè)方法方法時(shí),結(jié)果并不是喝而是拿舌頭喝水。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def drink(self):
		print("拿舌頭喝水")
		
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

當(dāng)我們的需求不是簡(jiǎn)單的覆蓋父類中的方法,而是在父類方法的基礎(chǔ)上對(duì)方法進(jìn)行擴(kuò)展。具體的做法是:

  1. 在需要的位置使用super().父類方法 來(lái)調(diào)用父類方法的執(zhí)行
  2. 代碼的其他位置針對(duì)子類的需求,編寫子類持有的代碼實(shí)現(xiàn)

我們來(lái)看一個(gè)例子,此時(shí)goudan在調(diào)用drink方法的時(shí)候,會(huì)輸出喝和拿舌頭喝水兩個(gè)輸出。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def drink(self):
		# 1. 根據(jù)子類的需求編寫特定的代碼
		print("拿舌頭喝水")
		# 2. 使用super繼承父類中的fangfa
		super().drink
		
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

3. 多繼承

對(duì)于Python而言,一個(gè)子類可以有多個(gè)父類。多繼承的基本語(yǔ)法是比較簡(jiǎn)單的。話不多說(shuō),直接看一個(gè)例子

class A():
	def test(self):
		print("test")
		
class B():
	def demo(self):
		print("demo")

class C(A,B):
	pass

c = C()
c.test()
c.demo()

總結(jié)

到此這篇關(guān)于Python中類的繼承的文章就介紹到這了,更多相關(guān)Python類的繼承內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺析pandas隨機(jī)排列與隨機(jī)抽樣

    淺析pandas隨機(jī)排列與隨機(jī)抽樣

    這篇文章主要介紹了pandas隨機(jī)排列與隨機(jī)抽樣的相關(guān)資料,幫助大家更好的利用pandas進(jìn)行數(shù)據(jù)分析,感興趣的朋友可以了解下
    2021-01-01
  • 淺析Python實(shí)現(xiàn)DFA算法

    淺析Python實(shí)現(xiàn)DFA算法

    DFA全稱為Deterministic Finite Automaton,即確定有窮自動(dòng)機(jī)。特征:有一個(gè)有限狀態(tài)集合和一些從一個(gè)狀態(tài)通向另一個(gè)狀態(tài)的邊,每條邊標(biāo)記有一個(gè)符號(hào),其中一個(gè)狀態(tài)是初態(tài),某些狀態(tài)是終態(tài)。不同于不確定的有限自動(dòng)機(jī),DFA中不會(huì)有從同一狀態(tài)出發(fā)的兩條邊標(biāo)志有相同的符號(hào)
    2021-06-06
  • python棧實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換的示例詳解

    python棧實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換的示例詳解

    棧(Stack)是計(jì)算機(jī)科學(xué)中常用的數(shù)據(jù)結(jié)構(gòu),具有眾多實(shí)際應(yīng)用,其中之一是使用棧來(lái)實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換,將一個(gè)數(shù)字從一種進(jìn)制表示轉(zhuǎn)換為另一種進(jìn)制表示,本文將深入研究棧的原理,以及如何使用Python實(shí)現(xiàn)十進(jìn)制到二進(jìn)制、八進(jìn)制和十六進(jìn)制的進(jìn)制轉(zhuǎn)換,需要的朋友可以參考下
    2023-11-11
  • wxPython+Matplotlib繪制折線圖表

    wxPython+Matplotlib繪制折線圖表

    這篇文章主要介紹了wxPython+Matplotlib繪制折線圖表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 詳解python 中in 的 用法

    詳解python 中in 的 用法

    in在Python中是操作符,具體來(lái)說(shuō)是成員操作符。這篇文章主要介紹了python 中in 的 用法,需要的朋友可以參考下
    2019-12-12
  • Numpy之random.randint產(chǎn)生隨機(jī)整數(shù)方式

    Numpy之random.randint產(chǎn)生隨機(jī)整數(shù)方式

    這篇文章主要介紹了Numpy之random.randint產(chǎn)生隨機(jī)整數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • python的等深分箱實(shí)例

    python的等深分箱實(shí)例

    今天小編就為大家分享一篇python的等深分箱實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • Python中的shape[0]、shape[1]和shape[-1]使用方法

    Python中的shape[0]、shape[1]和shape[-1]使用方法

    shape函數(shù)是Numpy中的函數(shù),它的功能是讀取矩陣的長(zhǎng)度,比如shape[0]就是讀取矩陣第一維度的長(zhǎng)度,這篇文章主要介紹了Python中的shape[0]、shape[1]和shape[-1]使用方法,需要的朋友可以參考下
    2023-07-07
  • 解決PyCharm無(wú)法使用lxml庫(kù)的問(wèn)題(圖解)

    解決PyCharm無(wú)法使用lxml庫(kù)的問(wèn)題(圖解)

    這篇文章主要介紹了解決PyCharm無(wú)法使用lxml庫(kù)的問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Python pymysql模塊安裝并操作過(guò)程解析

    Python pymysql模塊安裝并操作過(guò)程解析

    這篇文章主要介紹了Python pymysql模塊安裝并操作過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評(píng)論