怎样在python中定义非闭包
1、说明
(1)非封闭包装方式定义了Averager这一类。然后,在初始化方法中,定义了数组series,以保存输入的数值。
(2)接着使用__call__这样的实例对象可以像调用普通函数一样以对象名()的形式使用方法(1)。接受参数作为需要计算的新数值,内部保存在series数组中。
2、实例
classAverager():
def__init__(self):
self.series=[]
def__call__(self,new_value):
self.series.append(new_value)
total=sum(self.series)
returntotal/len(self.series)
avg=Averager()
logging.info('avg(10)->%s',avg(10))
logging.info('avg(20)->%s',avg(20))
logging.info('avg(30)->%s',avg(30))
以上就是在python中定义非闭包的方法,希望能对大家有所帮助!更多Python学习教程请关注IT培训机构:千锋教育。