python中__call__内置函数用法实例

yipeiwu_com6年前Python基础

本文实例讲述了python中__call__内置函数的用法。分享给大家供大家参考。具体分析如下:

对象通过提供__call__(slef, [,*args [,**kwargs]])方法可以模拟函数的行为,如果一个对象x提供了该方法,就可以像函数一样使用它,也就是说x(arg1, arg2...) 等同于调用x.__call__(self, arg1, arg2)。模拟函数的对象可以用于创建仿函数(functor) 或代理(proxy)

class DistanceForm(object):
  def __init__(self, origin):
    self.origin = origin
    print "origin :"+str(origin)
  def __call__(self, x):
    print "x :"+str(x)
p = DistanceForm(100)
p(2000)

输出:

>>> 
origin :100
x :2000

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python开发常用的一些开源Package分享

一般安装完Python后,我会先装一些常用的Package。做个笔记,记录下来,以备查询: Web FrameWorks Tornado,访问:http://www.tornadoweb...

pandas 根据列的值选取所有行的示例

如下所示: # 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isin...

Python实现Linux下守护进程的编写方法

本文实例讲述了Python实现Linux下守护进程的编写方法,分享给大家供大家参考,相信对于大家的Python程序设计会起到一定的帮助作用。具体方法如下: 1. 调用fork()以便父进...

利用python在excel里面直接使用sql函数的方法

利用python在excel里面直接使用sql函数的方法

我们一般在Excel里面是使用数据连接属性里面写sql语句,或者vba里面利用ado组件执行sql语句。 新版的Excel里面带上了Power query的功能也可以使用Odbc.Dat...

Python中几种属性访问的区别与用法详解

起步 在Python中,对于一个对象的属性访问,我们一般采用的是点(.)属性运算符进行操作。例如,有一个类实例对象foo,它有一个name属性,那便可以使用foo.name对此属性进行...