__call__()方法

python 给类提供了名为__call__的特别方法,该方法允许程序员创建可调用的对象(实例)

默认情况下,__call__() 方法是没有实现的,这意味着大多数实例都是不可调用的。

class C(object):
    def __call__(self, *args):
        print "I'm callable! Called with args:\n", args
a=C()
print a
print callable(a)




C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/eeeee/a15.py
<__main__.C object at 0x025A7C30>
True


class C(object):
    def __init__(self, *args):
        print "I'm callable! Called with args:\n", args
a=C()
print a
print callable(a)


C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/eeeee/a15.py
I'm callable! Called with args:
()
<__main__.C object at 0x02477C30>
False

猜你喜欢

转载自blog.csdn.net/zhaoyangjian724/article/details/80432374