Python 3.1.1类问题

1 python class

我是一名新的Python程序员,他在课堂上使用'self'时遇到了一些麻烦.例如:

class data:
    def __init__(self):
        self.table = []
    def add(self, file):
        self.table.append(file)
data.add('yes')
Run Code Online (Sandbox Code Playgroud)

在这个函数中,我希望将table作为存储在类数据中的变量,并使用add来修改它.但是,当我运行此脚本时它会给我错误:

Traceback (most recent call last):
  File "/Projects/Python/sfdfs.py", line 7, in <module>
    data.add('yes')
TypeError: add() takes exactly 2 positional arguments (1 given)
Run Code Online (Sandbox Code Playgroud)

我假设我试图在这个实例中以错误的方式调用该函数,因为这个语法非常类似于python文档中的示例:http://docs.python.org/3.1/tutorial/classes.html

Ale*_*lli 7

首先需要创建类的实例:

mydata = data()
Run Code Online (Sandbox Code Playgroud)

那么你可以调用方法 - 在实例上,当然不是在类上:

mydata.add('yes')
Run Code Online (Sandbox Code Playgroud)