python superの使い方と原理の詳細


この文章は主にpython superの使い方と原理の詳細を紹介しています。ここでは例示的なコードを通して紹介された非常に詳細で、皆さんの学習や仕事に対して一定の参考学習価値を持っています。必要な友達は参考にしてください。
概念
superはpythonのビルド関数として機能する。主な役割は以下の通りです。
  • は、ベース
  • の使用を避けることができます。
  • は、複数の相続にしたがって
  • を使用する。
    実例
    単一継承のシナリオでは、一般的にsuperを使用してベースクラスを呼び出して実装される。
    以下は一例です。
    
    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()
    出力結果:
    ⑧super git:(mater)Ϩpy super_スクリプト.py
    Dug has four legs.
    Dug is a warm-blooded animal.
    スーパーは多重継承の中での使用:
    以下は一例です。
    
    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')
    出力結果:
    
    ➜ 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.
    参考文献
    https://www.programiz.com/python-programming/methods/built-in/super
    以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。