comparaison sur le nom d'une classe
Bonjour,
J'ai défini une classe générique appelée par deux autres instances de classes. Je voudrais savoir qui appelle cette classe générique afin de différencier certains traitements. Je ne sais pas comment tester l'instance appellante, ainsi :
Code:
1 2 3
| class GenericPanel__:
def __init__(self)
print "classe appelante : ",self.__class__," type=",type(self.__class__) |
J'obtiens les traces suivantes :
Code:
1 2 3 4
| 1er appel :
classe appelante : <HMI.panel.Panel__ <type 'classobj'>
2eme appel:
classe appelante : <HMI.detailbox.DetailBox__ <type 'classobj'> |
Je recherche le test qui me permettrait de différencier les deux appels (si je mets la string "HMI_panel.Panel__" cela ne marche pas) :
Code:
1 2 3 4 5 6
| class GenericPanel__:
def __init__(self)
if self.__class__ == ???:
print "l'appelant est HMI.panel.Panel__"
else:
print "l'appelant est HMI.detailbox.DetailBox__" |
Merci