python中的__call__()方法
程序员文章站
2022-06-12 08:25:28
...
今天遇到了一个类中定义了__call__()方法:
查了一下,回答如下:
http://c.biancheng.net/view/2380.html
简单理解,就是如果一个类中定义了__call__()方法,那么这个方法就可以直接通过()调用。
借用上边链接回答中的例子:
class CLanguage:
# 定义__call__方法
def __call__(self,name,add):
print("调用__call__()方法",name,add)
clangs = CLanguage()
clangs("C语言中文网","http://c.biancheng.net")
输出为:
调用__call__()方法 C语言中文网 http://c.biancheng.net
这里直接使用括号调用了clangs函数。
扩展来讲:
其实所有的通过()进行的对象调用“对象名()”,都可看做是“对象名.call()”的简写。
上一篇: python中的__call__方法
下一篇: python类中的__call__方法