新聞中心
今天小編要跟大家講的super跟Tiger有關(guān),是不是很有意思呢,一下子覺得編程中的函數(shù)也變得可愛起來了。而且這個(gè)有趣的super的使用并沒有前兩篇那么難,所以大家打起精神,一鼓作氣學(xué)會(huì)super吧。super在調(diào)用方面的功能使用非常適合python初學(xué)者,我們可以先簡單的了解一下。

江城ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
Tiger 和 Whitetiger類中主要講解super的用法。super用于在子類中調(diào)用父類方法及屬性,其實(shí)很多時(shí)候繼承時(shí)super不是必要的,我們這里只簡單了解一下這種用法。
class Tiger: def __init__(self, name, age): self.name = name self.age = age def eat(self): return "I am eating" def myname(self): return "my name is " + self.name class Whitetiger(Tiger): def __init__(self, name, age, height): super(Whitetiger, self).__init__(name, age) # 1 self.height = height def eatmore(self): return super(Whitetiger, self).eat() + " more" # 2 def realname(self): return "Actually " + super(Whitetiger, self).myname()
創(chuàng)建實(shí)例
wtony = Whitetiger("Tony", 10, 100)
wtony.eatmore() # 'I am eating more'
wtony.realname() # 'Actually my name is Tony'
上面有兩個(gè)地方用到了super
#2 處用super調(diào)用父類的eat方法,但實(shí)際上用self.eat調(diào)用就可以了
#1 處讓子類中可以調(diào)用父類的屬性,其實(shí)就相當(dāng)于運(yùn)行父類的_init_函數(shù)。如果沒有#1,則實(shí)例無法調(diào)用name屬性;也無法調(diào)用realname方法,因?yàn)樗玫搅薾ame屬性。#1處有幾種等價(jià)定義形式如下
以上都是super在代碼示例中的運(yùn)用,小伙伴們用的時(shí)候注意留意下super。調(diào)用的過程不難,只要編輯代碼的時(shí)候稍加細(xì)心就可以了。
網(wǎng)站題目:創(chuàng)新互聯(lián)Python教程:python3類中的super如何調(diào)用?
文章來源:http://fisionsoft.com.cn/article/cogohej.html


咨詢
建站咨詢
