Skip to main content
 首页 » 编程设计

python之如何获取静态方法的类名

2025年05月04日15birdshome

所以基类中有一个静态方法,子类应该使用它。

但是,我需要知道哪个子类调用了静态方法。

代码是这样的:

class BaseClass(): 
    @staticmethod 
    def getname(): 
        #some magic 
 
class SubClassA(BaseClass):  
    pass 
 
class SubClassB(BaseClass): 
    pass 
 
SubClassA.getname()   #hope to see 'SubClassA' 
SubClassB.getname()   #hope to see 'SubClassB' 

或者,这可能吗?

请您参考如下方法:

staticmethod 不可能。但是,使用 classmethod

是可能的
class A(object): 
    @classmethod 
    def f(cls): 
        print cls