2009-05-14 7 views
1

Quand j'ai un foo objet, je peux l'obtenir de l'objet de classe viaComment puis-je obtenir le nom d'une classe python?

str(foo.__class__) 

Ce que je aurais besoin est cependant que le nom de la classe (par exemple « Foo »), l'aurait-dessus me donner quelque chose le long les lignes de

"<class 'my.package.Foo'>" 

Je sais que je peux le faire assez facilement avec une expression rationnelle, mais je voudrais savoir s'il y a une façon plus « propre ».

+0

Utilisez la fonction dir() avec vos objets préférés. – tzot

Répondre

4

Essayez

__class__.__name__ 
3

foo .__ classe __.__ name__ devrait vous donner résultat que vous avez besoin.

1
Python 3.0.1 (r301:69561, Feb 13 2009, 20:04:18) [MSC v.1500 32 bit (Intel)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> class foo: 
...  x = 1 
... 
>>> f = foo() 
>>> f.__class__.__name__ 
'foo' 
>>> 
Questions connexes