call方法python,python的call函数
我们都有函数调用的经验,所以通过调用来调用类实例的过程和函数很像。很多人都知道类的用法,但是什么是类实例呢?你可以把一个类想象成一个设计图,一个类实例就是设计的成品。既然我们已经弄清楚了call call对象的概念,我们可以进一步用它来改进python中的数组。给想学的朋友看看吧。
__call__()
在Python中,一个函数性的一级对象意味着一个函数可以传递给另一个函数或方法,从一个子例程返回,或者赋给一个变量。
类的实例也可以像函数一样对待,比如将它们传递给其他函数或方法并被调用。为了实现这个目标,需要在类中专门定义__call__()方法。
Def __call__(self,[args.])它需要一系列参数。假设X是类X的实例,x.__call__(1,2)等价于调用x(1,2),实例X好像是一个函数。
改进斐波那契数列:
classFib(对象):
?请添加__call__方法以使调用更容易:
f=纤维()
打印(f(10))
[0,1,1,2,3,5,8,13,21,34]可以用相似函数的形式表达实例对象,进一步模糊了函数和对象之间的概念。
classFib(对象):
def__init__(self):
及格
def__call__(self,num):
a,b=0,1;
self.l=[]
foriinrange(编号):
self.l .追加(a)
a,b=b,a b
returnself.l
def__str__(self):
returnstr(self.l)
__rept__=__str__
f=纤维()
打印(f(10))
这种将call与斐波那契数列结合使用的改进方法到此结束。关于斐波那契数列有哪些被遗忘的可以看前面的文章,然后回来用调用的方法来改进。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。