Warum ist Python statisch / Klassenmethode nicht aufrufbar?

8

Warum sind Python-Instanzmethoden aufrufbar, aber statische Methoden und Klassenmethoden nicht aufrufbar?

Ich habe Folgendes getan:

%Vor%

Das Ergebnis ist:

%Vor%

Technisch könnte dies daran liegen, dass das Instanzmethodenobjekt ein bestimmtes Attribut (nicht) auf eine bestimmte Art hat (möglicherweise __call__ ). Warum eine solche Asymmetrie oder welchem ​​Zweck dient sie?

Ich bin während des Erlernens von Python-Inspektions-Tools auf dieses Problem gestoßen.

Zusätzliche Anmerkungen von Kommentaren:

Die in den Kommentaren angegebene SO-Antwort besagt, dass die static / class-Methoden Deskriptoren sind , die nicht abrufbar sind. Jetzt bin ich neugierig, warum Deskriptoren nicht abrufbar gemacht werden, da Deskriptoren Klassen mit bestimmten Attributen (eines von __get__ , __set__ , __del___ ) definiert sind.

    
DurgaDatta 14.07.2016, 03:27
quelle

1 Antwort

0

Die Instanz ist der Container, in dem die Daten des Objekts in der Variablen self gespeichert sind.

    
Mark Harrison 27.09.2016 01:54
quelle

Tags und Links