python中__str__, __call__方法

call在加上()时执行

class Foo:
    def __init__(self):
        pass
    def __call__(self, *args, **kwargs):
        print "__call__"
obj = Foo()
obj() #自动执行此方法__call__

输出 print ‘对象’ 自动调用str方法

class Foo:
    def __init__(self):
        pass
    def __call__(self, *args, **kwargs):
        print "__call__"
    def __str__(self):
        return "C Class"
obj = Foo()
print obj #调用__str__方法
发布了289 篇原创文章 · 获赞 280 · 访问量 130万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章