我是一名新的 Python 程序员,在类中使用“self”时遇到了一些麻烦。例如:
class data:
def __init__(self):
self.table = []
def add(self, file):
self.table.append(file)
data.add('yes')
在这个函数中,我想让表成为一个存储在类数据中的变量,并使用添加来修改它。但是,当我运行此脚本时,出现错误:
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)
我假设我在这种情况下试图以错误的方式调用函数,因为这种语法与 python 文档中的示例非常相似:http://docs.python.org/3.1/tutorial/classes.html
请您参考如下方法:
你首先需要创建一个类的实例:
mydata = data()
然后您可以调用该方法 -- 在实例上,当然,不在类上:
mydata.add('yes')
