python变量,类

时间:2011-04-08 21:43:54

标签: python class

亲爱的所有人,尝试学习python,类以及如何在两者之间传递变量。通过这里的学习指南,我遇到以下错误的问题:

TypeError: unbound method scan() must be called with lexicon instance as first argument (got str instance instead)

有人可以帮助我更好地理解这一点吗? 致谢!!!

class lexicon (object):
  def __init__(self,data):
    self.direction = data
    self.words = data.split()

  def scan(self):
    return self.words

def main():
    stuff = raw_input('> ') 
    x = lexicon.scan(stuff)

if __name__ == '__main__':
 main()

2 个答案:

答案 0 :(得分:7)

在调用其中一个方法之前,必须实例化一个lexicon类型的对象。即。

lex = lexicon(data)
lex.scan()

答案 1 :(得分:1)

除了吉姆所说的,self会自动传递给你。 (并且不需要将其称为self,但将其称为其他东西只会让自己和其他人感到困惑)