新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
如何在python中使用super方法-創(chuàng)新互聯(lián)
如何在python中使用super方法?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
概念
super作為python的內(nèi)建函數(shù)。主要作用如下:
允許我們避免使用基類
跟隨多重繼承來使用
實(shí)例
在單個繼承的場景下,一般使用super來調(diào)用基類來實(shí)現(xiàn):
下面是一個例子:
class Mammal(object): def __init__(self, mammalName): print(mammalName, 'is a warm-blooded animal.') class Dog(Mammal): def __init__(self): print('Dog has four legs.') super().__init__('Dog') d1 = Dog()
輸出結(jié)果:
? super git:(master) ? py super_script.py
Dog has four legs.
Dog is a warm-blooded animal.
super在多重繼承里面的使用:
下面是一個例子:
class Animal: def __init__(self, animalName): print(animalName, 'is an animal.'); class Mammal(Animal): def __init__(self, mammalName): print(mammalName, 'is a warm-blooded animal.') super().__init__(mammalName) class NonWingedMammal(Mammal): def __init__(self, NonWingedMammalName): print(NonWingedMammalName, "can't fly.") super().__init__(NonWingedMammalName) class NonMarineMammal(Mammal): def __init__(self, NonMarineMammalName): print(NonMarineMammalName, "can't swim.") super().__init__(NonMarineMammalName) class Dog(NonMarineMammal, NonWingedMammal): def __init__(self): print('Dog has 4 legs.'); super().__init__('Dog') d = Dog() print('') bat = NonMarineMammal('Bat')
輸出結(jié)果:
? super git:(master) ? py super_muli.py Dog has 4 legs. Dog can't swim. Dog can't fly. Dog is a warm-blooded animal. Dog is an animal. Bat can't swim. Bat is a warm-blooded animal. Bat is an animal.
關(guān)于如何在python中使用super方法問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
標(biāo)題名稱:如何在python中使用super方法-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://www.dlmjj.cn/article/cscogp.html