內置函數super()
有助於 python 中的繼承。該函數返回一個表示父類的對象,並允許訪問父類的方法和屬性。
**super()**
超級()參數:
它不需要任何參數。這個方法可以處理多個繼承,並且它避免了顯式使用基類名稱。
超級()返回值
此方法不返回任何內容。在 python 中,方法解析順序(MRO)概述了方法的繼承順序。派生調用中的方法總是在基類的方法之前調用。
Python 中super()
方法的示例
示例 1:單繼承的super()
在 python 中是如何工作的
class Mammals(object):
def __init__(self, mammalName):
print(mammalName, 'is a pet animal.')
class Cat(Mammals):
def __init__Cat has four legs.')
super().__init__('Cat')
c = Cat()
輸出:
Cat is a pet animal.
示例 2:如何在 python 中使用多重繼承的super()
class Animals:
def __init__(self, Animals):
print(Animals, 'is an animal.');
class Mammals(Animals):
def __init__(self, mammalName):
print(mammalName, 'is a pet animal.')
super().__init__(mammalName)
class NonWingedMammal(Mammals):
def __init__(self, NonWingedMammal):
print(NonWingedMammal, "can't fly.")
super().__init__(NonWingedMammal)
class NonMarineMammal(Mammals):
def __init__(self, NonMarineMammal):
print(NonMarineMammal, "can't swim.")
super().__init__(NonMarineMammal)
class Cat(NonMarineMammal, NonWingedMammal):
def __init__(self):
print('Cat has 4 legs.');
super().__init__('Cat')
c = Cat()
print('')
bat = NonMarineMammal('Bat')
輸出:
Cat has 4 legs.
Cat can't swim.
Cat can't fly.
Cat is a pet animal.
Cat is an animal.
Bat can't swim.
Bat is a pet animal.
Bat is an animal.
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/311989.html