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 :
J'obtiens les traces suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 class GenericPanel__: def __init__(self) print "classe appelante : ",self.__class__," type=",type(self.__class__)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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 1er appel : classe appelante : <HMI.panel.Panel__ <type 'classobj'> 2eme appel: classe appelante : <HMI.detailbox.DetailBox__ <type 'classobj'>Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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__"
Partager