Python: Wie erinnerst du dich an die Reihenfolge der Argumente von 'super'?

7

Wie erinnern Sie sich an die Reihenfolge der Argumente von super ? Gibt es irgendwo eine Gedächtnisstütze, die ich vermisst habe?

Nach Jahren der Python-Programmierung muss ich noch nachsehen: (

(für den Datensatz ist es super(Type, self) )

    
David Wolever 03.07.2010, 14:40
quelle

4 Antworten

11

Die Vererbung lässt mich an eine Klassifikation Hierarchie denken. Und die Reihenfolge der Argumente für super ist hierarchisch: zuerst die Klasse, dann die Instanz.

Eine andere Idee, inspiriert von der Antwort von ~ unutbu:

%Vor%

Schritte zum Aufbau eines korrekten super() Calls.

%Vor%     
FMc 03.07.2010, 17:40
quelle
10

Beachten Sie, dass self optional ist - super(Type) ermöglicht den Zugriff auf ungebundene Superklassenmethoden - und optionale Argumente kommen immer als letzte.

    
Jochen Ritzel 03.07.2010 14:59
quelle
5

Ich nicht. In Python 3 können wir einfach

schreiben %Vor%     
kennytm 03.07.2010 14:41
quelle
2

Normalerweise wird super innerhalb einer class -Definition verwendet. Das erste Argument für super sollte immer (immer wieder) der Name von class sein.

%Vor%     
unutbu 03.07.2010 15:41
quelle

Tags und Links