Python-Typsystem - Objekt vs. Typ

9

Ich bin neu in Python. Ich bin vertraut mit Java, C / C ++ und OCaml. Ich verstehe Lambda Calculus und Elementartheorie wegen eines Programmiersprachenkurses, den ich an der Universität nahm.

Bewaffnet mit diesem Hintergrund habe ich versucht, dies zu lesen - Ссылка

Irgendwo unten erwähnt er das:

  • (type 'object') ist eine Instanz von (type 'type')
  • (type 'object') ist eine Unterklasse von no object.
  • (type 'type') ist eine Instanz von sich selbst.
  • (type'type) ist eine Unterklasse von (type 'object')

Ich kann mein armes Gehirn nicht darum wickeln:

  • (type 'object') ist eine Instanz von (type 'type')
  • (type 'type') ist eine Unterklasse von (type 'object')

Was ist der Piepton hier? Was ich hören möchte, sind extrem gründliche Gründe dafür, was genau hier passiert und warum die Dinge so sind, wie sie sind. Keine oberflächlichen Gründe oder Analogien bitte.

    
Gitmo 23.11.2012, 03:46
quelle

2 Antworten

4

Es geht speziell um das Objekt type . Für type erben alle Typen von <type 'type'> .

Ich glaube, die andere Aussage weist nur darauf hin, dass <type 'type'> ein object ist; Ein Beispiel, an das ich dachte, als ich nach unten schaute:

%Vor%     
nair.ashvin 23.11.2012 04:13
quelle
0

Da der Typbegriff mit der Klasse identisch ist, können Sie den Typ mit normalen objektorientierten Techniken und Klassensyntax ableiten, um ihn anzupassen.

Und da Klassen tatsächlich Instanzen der Typklasse sind, können Sie beim Erstellen von Klassen aus angepassten Unterklassen des Typs benutzerdefinierte Arten von Klassen implementieren.

In neuen Klassen:

  • type ist eine Klasse, die benutzerdefinierte Klassen generiert.
  • Metaklassen sind Unterklassen der Typklasse.
  • Klassenobjekte sind Instanzen der Typklasse oder einer Unterklasse davon.
  • Instanzobjekte werden aus einer Klasse generiert.
draskomikic 13.09.2016 15:46
quelle

Tags und Links