Klassenname einer Variable herausfinden?

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.
Blue-Tiger
User
Beiträge: 11
Registriert: Samstag 2. April 2005, 21:45
Kontaktdaten:

Klassenname einer Variable herausfinden?

Beitragvon Blue-Tiger » Samstag 16. April 2005, 22:19

Hi there!
wie kann ich den Klassennamen einer Variable herausfinden? D.h. wenn ich eine Variable vom Typ "MyClass" habe, dann moecht ich irgendwie eben genau dieses "MyClass" herausbekommen....

Ich dachte erst, dafuer gibts ja "type".... aber na ja:


Code: Alles auswählen

i = 5
>>> type(i)  # funktioniert
<type 'int'>

import Hash
foo = Hash.Hash1(13)
>>> type(foo)
<type 'instance'>  # funktioniert leider nicht... foo ist ein "Hash1"



sorry, ich weiss ich drueck mich nicht grad klar aus
:oops:
Ordnung ist das Chaos, an das man sich gewöhnt hat
Der Weg ist das Ziel

bluetiger.bauchlandung.org
BlackJack

Beitragvon BlackJack » Sonntag 17. April 2005, 01:09

Den Klassennamen einer Variablen kann man nicht herausfinden. Aber den Namen der Klasse des Objektes, das an einen Namen gebunden ist:

Code: Alles auswählen

In [24]: class Spam:
   .24.:   pass
   .24.:

In [25]: a = Spam()

In [26]: a.__class__.__name__
Out[26]: 'Spam'
Blue-Tiger
User
Beiträge: 11
Registriert: Samstag 2. April 2005, 21:45
Kontaktdaten:

Beitragvon Blue-Tiger » Mittwoch 20. April 2005, 16:37

thx, genau das hab ich gesucht :)

aber was ist der Unterschied zwischen den Klassennamen einer Variablen und dem Namen der Klasse des Objektes?
Ordnung ist das Chaos, an das man sich gewöhnt hat
Der Weg ist das Ziel


bluetiger.bauchlandung.org
BlackJack

Beitragvon BlackJack » Mittwoch 20. April 2005, 22:08

`a` ist die Variable bzw. ein Variablenname. Und ein Name hat keine Klasse. Nur das Objekt an den dieser Name gebunden ist hat eine.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder