VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • __call__用法简谈

python一切皆对象,从是否可调用层面讲,对象又可以分为可调用对象、不可调用对象

在本篇中,类中实现__call__双下方法,即将该类的实例变为可调用对象

  普通类未实现__call__的方法,实例是不可调用的,先看

复制代码
1 class Valley:
2     ...
3 
4 
5 if __name__ == '__main__':
6     v = Valley()
7     print(callable(v))
复制代码

output:

   False

  实现了__call__方法后

复制代码
 1 class Valley:
 2     def __call__(self, *args, val='测试', **kwargs):
 3         print(val)
 4 
 5 
 6 if __name__ == '__main__':
 7     v = Valley()
 8     v()
 9     # 其实质
10     v.__call__()
复制代码

 


相关教程