静态方法与类方法

2017-04-11  本文已影响28人  00cadc01cbc1

简单的理解就是静态方法与类方法都不需要实例就可以访问

静态方法与类方法的不同在于静态方法不能访问所在类,而类方法可以, 如下

class TestStaticMethod:
    @staticmethod
    def foo():
        pass

class  TestClassMethod:
    @classmethod
    def foo(cls):
        print cls.__name__

所以 @classmethod 还是很有用的, 通过他, 可以对class做动太的匹配, 下面就是刚想到的场景 , 因为@staticmethod没有把cls 传进去, 就不行. @staticmethod 仅仅是逻辑上和class 帮在一起

Paste_Image.png

可以参考如下几个小哥的讨论
http://bbs.csdn.net/topics/350141376

上一篇 下一篇

猜你喜欢

热点阅读