2017-05-05 70 views
-1

我定义的类如下所示,它给出了数字的平均值。一个Python类,计算被逐个传递给类的数字的平均值

class Average: 
    #lisst=[] 
    def __init__(self, value): 
     self.value=value 
     #Average.lisst.append(self) 
    def add(self, other,k): 
     return Average(self.value +(other.value-self.value)/float(k)) 

这是没有任何变化的问题:首先 :写一个Python类计算数字的平均值接一个地级传递一个。它应该有一个put(x)方法给它一个数字,一个get()方法返回到目前为止传递的数字的平均值。其次:编写一个框架类,该类有一个append(o)方法,该方法采用类似上述对象的对象(即具有put方法处理数据和get方法来检索结果的对象)。它本身应该有一个put(x)方法,它将x传递给通过append传递给它的所有对象,以及一个get方法,该方法将返回一个包含所有包含对象的get调用结果的列表。
我真的不明白什么是想要的。我只需要一个提示就可以继续。谢谢。

PS这不是一个强制性的班级任务,我没有得到任何意见。只是为了澄清我不作弊。

+1

'我实际上不明白是什么。'我也是^ _^ –

+1

你的任务要求你创建一个*类*来计算平均值? –

回答

1

首先,你应该直接这个问题那要你的课程的权力:讲师,助教等

其次,你有原来分配的措辞?你写的东西在几个方面不一致或不完整。

但是,让你在此期间会...

像上面(有认沽方法 过程数据和get方法来检索结果,即那些)

的那些对象

您的Average类目前没有;你必须添加它们。看起来add可能是处理方法。

它本身应该有一个看跌期权(x)的方法,它会通过X上的所有 对象Ø通过追加

我很困惑在这里传递给它。 append可以构造一个列表,但它不会传递对象。我设想这个系统,我想这个暗示我的用户程序应该收集列表中的Average对象,并将该列表传递给框架的put方法。

get方法将返回一个包含 的结果的列表获取所有包含对象的调用。

该框架需要维护它负责的对象列表。 framework.get只是遍历Average.get为每个对象,返回结果列表。

在代码方面,我看到这样的事情:

class Average: 
    # stuff to add 
    def put(self, new_value): 
     ... 
    def get(self): 
     return self.value 

class Avg_FW: 
    def __init__(self, avg_list): 
     # maintain the list of all Average objects 
    def put(self, new_value): 
     # Invoke Average.put on each average in your list 
    def get(self): 
     # Invoke Average.get on each average in your list 
     # Return a list of the results 

这是否澄清结构足以继续吗? 它与你对课程的了解是否相符?

1

用列表变量创建一个类(你已经完成了)。

您可以使用默认的构造函数。

add/append/put函数将输入号码附加到列表中。您也可以检查以确认输入是一个数字(int或float/double)。

平均函数返回列表中数字的平均值。

实际的实现留给读者作为练习。