Unterschied zwischen super() aufrufen und Oberklasse direkt

In Python 2.7 und 3, verwende ich folgende Methode aufrufen, eine super-Klasse-Funktion:

class C(B):
    def __init__(self):
        B.__init__(self)

Ich sehe es auch möglich, zu ersetzen B.__init__(self) mit super(B, self).__init__() und in Python ist3 super().__init__().

Gibt es irgendwelche Vorteile oder Nachteile, dies zu tun oder so? Es macht mehr Sinn, zu rufen es von B direkt für mich zumindest, aber vielleicht gibt es einen guten Grund, wo super() können nur verwendet werden, wenn Sie Metaklassen (die ich im Allgemeinen zu vermeiden).

InformationsquelleAutor johannestaas | 2014-02-07

Schreibe einen Kommentar