Warum ist der Typ von einer Instanz Instance?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
Dr.Miles
User
Beiträge: 38
Registriert: Montag 15. Dezember 2008, 08:33
Wohnort: Mannheim
Kontaktdaten:

Dienstag 20. Januar 2009, 17:58

Hallo,
ich habe gelesen:
Leonidas hat geschrieben: Eine Klasse ist ein Typ, so einfach ist das.
Warum ist eine Instanz vom Typ Instance und nicht vom Typ <Klassenname>?
Instanz bedeutet doch nur Kopie/Ableger vom Typ <Klassenname>?
Wäre nicht type '<Klassenname'> viel sinnvoller als <type 'instance'> ?

Code: Alles auswählen

class neuerTyp :
	pass
neuer_Typ = neuerTyp()
print type(neuer_Typ)#=<type 'instance'>
Danke im voraus
Gruß Dr.Miles
www.i2p2.de <--- sehr interressantes Anonymisierungsprojekt.
www.schaeuble-wegtreten.de <--- Petition gegen Schäuble
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Dienstag 20. Januar 2009, 18:01

Weil es eine Old-Style-Klasse ist. Lass es von ``object`` erben und der Typ ist `neuerTyp`.
"Der Dumme erwartet viel. Der Denkende sagt wenig." ("Herr Keuner" -- Bertolt Brecht)
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 20. Januar 2009, 19:13

Old-Style-Klassen würde man eigentlich inzwischen gar nicht mehr nutzen und ab Python 3.0 gibt es sie auch nicht mehr, dort ist alles New-Style und verhält sich so wie du erwarten würdest.
Antworten