Python 附加到类中的列表

Python 附加到类中的列表,python,list,class,append,Python,List,Class,Append,我想知道如何附加到类中的列表 class Dataset(object): def __init__(self): self.grade=[] def add(self, x): return Dataset(self.grade.append(x)) 这是迄今为止我所做的事情之一的一个例子。在测试中,我有 def main(): print('This is a program to compute the min, max, me

我想知道如何附加到类中的列表

class Dataset(object):

    def __init__(self):
        self.grade=[]

    def add(self, x):
        return Dataset(self.grade.append(x))
这是迄今为止我所做的事情之一的一个例子。在测试中,我有

def main():
    print('This is a program to compute the min, max, mean and')
    print('standard deviation for a set of numbers.\n')
    data = Dataset()
    while True:
        xStr = float(input('Enter a number (<Enter> to quit): '))
        if xStr == '':
            break
        data.add(xStr)
def main():
print('这是一个计算最小值、最大值、平均值和')
打印('一组数字的标准偏差。\n')
数据=数据集()
尽管如此:
xStr=float(输入('输入一个数字(退出):'))
如果xStr='':
打破
data.add(xStr)

到目前为止,我有正确的想法吗

添加方法应该是
defadd(self,x):self.grade.append(x)
。除此之外,您是正确的。

添加方法应该是
defadd(self,x):self.grade.append(x)
。除此之外,你是对的。

你需要这样的东西:

class Dataset(object):

    def __init__(self):
        self.grade=[]

    def add(self, x):
        self.grade.append(x)
As
list.append
是一个变异操作,因此不需要返回任何内容

其次,当您将
xStr
转换为浮点时,如果xStr=''总是
False
。最好在此处使用try,因为
float(“”)
将引发
ValueError

try:
   xStr = float(input('Enter a number (<Enter> to quit): '))
   data.add(xStr)
except ValueError:
   break
最后,如果您使用的是py3.x,那么就不需要从
对象继承
,py3.x中已经删除了经典类

演示:

>>> data = Dataset()
>>> data.add(1)
>>> data.grade
[1]

你需要这样的东西:

class Dataset(object):

    def __init__(self):
        self.grade=[]

    def add(self, x):
        self.grade.append(x)
As
list.append
是一个变异操作,因此不需要返回任何内容

其次,当您将
xStr
转换为浮点时,如果xStr=''
总是
False
。最好在此处使用try,因为
float(“”)
将引发
ValueError

try:
   xStr = float(input('Enter a number (<Enter> to quit): '))
   data.add(xStr)
except ValueError:
   break
最后,如果您使用的是py3.x,那么就不需要从
对象继承
,py3.x中已经删除了经典类

演示:

>>> data = Dataset()
>>> data.add(1)
>>> data.grade
[1]

+1但
s=input();如果不是,则s:
将比异常更清晰。@msw我更喜欢EAFP.)+1但
s=input();如果不是,则s:
将比异常更清晰。@msw我更喜欢EAFP.)