Heim > Backend-Entwicklung > Python-Tutorial > Wie funktioniert der Konstruktor „super()' in Python?

Wie funktioniert der Konstruktor „super()' in Python?

Linda Hamilton
Freigeben: 2024-11-18 00:07:02
Original
903 Leute haben es durchsucht

How Does the `super()` Constructor Work in Python?

Aufrufen von Superkonstruktoren in Python

In der Welt der Programmierung spielt der Superkonstruktor eine entscheidende Rolle beim Aufrufen des Konstruktors der übergeordneten Klasse. Wie Sie erwähnt haben, scheint die Erwartung, super() in Python zu verwenden, aufgrund der Vertrautheit mit anderen Programmiersprachen offensichtlich zu sein. Python bietet jedoch einen etwas anderen Ansatz für diesen Aufruf.

In Python 3 und höher kann der Superklassenkonstruktor mit einer vereinfachten Syntax aufgerufen werden:

class A(object):
    def __init__(self):
        print("world")

class B(A):
    def __init__(self):
        print("hello")
        super().__init__()
Nach dem Login kopieren

Diese Syntax ersetzt die vorherige längere Form, die in Python 2 verwendet wurde:

class A(object):
    def __init__(self):
        print "world"

class B(A):
    def __init__(self):
        print "hello"
        super(B, self).__init__()
Nach dem Login kopieren

In Python 2 mussten Sie den enthaltenden Klassennamen im super()-Methodenaufruf angeben. In Python 3 wurde jedoch mit der doppelten Unterstrichsyntax (__) eine Verknüpfung eingeführt, mit der Sie diesen Parameter weglassen können, was zu saubererem Code führt.

Das obige ist der detaillierte Inhalt vonWie funktioniert der Konstruktor „super()' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage