2009-02-06 37 views

回答

133
instance.__class__.__name__ 

例如:

>>> class A(): 
    pass 
>>> a = A() 
>>> a.__class__.__name__ 
'A' 
+36

我更喜歡:'類型(比如).__ name__` – Chris 2011-05-08 18:58:51

+2

如果你不想將類實例?你能得到這個班的名字嗎? (不含對象) – Gabriel 2013-10-15 23:17:35

8

,你也可以使用類創建一個字典本身作爲關鍵字,不一定是類名

typefunc={ 
    int:lambda x: x*2, 
    str:lambda s:'(*(%s)*)'%s 
} 

def transform (param): 
    print typefunc[type(param)](param) 

transform (1) 
>>> 2 
transform ("hi") 
>>> (*(hi)*) 

這裏是映射的字典每種類型的功能。 transform獲取該函數並將其應用於該參數。

,當然,這將是更好的使用「真正的」 OOP

相關問題