带有* args的Python TypeError

时间:2012-04-24 21:20:07

标签: python

原谅我的无知,我是Python的新手,我似乎无法在Google上找到答案。也许我只是在寻找合适的关键词。

我有一个基本功能如下:

class Basic(object):
    def Process(*values):
        for i in range(len(values)):
            value = int(values[i])
            print value

b = Basic()
b.Process(4, 5, 6)

我收到以下错误:

  

TypeError:int()参数必须是字符串或数字,而不是“基本”

我确信这很简单,但任何帮助都会受到赞赏。

由于

2 个答案:

答案 0 :(得分:5)

你忘了给self作为进程的参数:

def Process(self, *values):

答案 1 :(得分:1)

对,自我。实例方法应该是较低的,并且不应该编写类:http://www.youtube.com/watch?v=o9pEzgHorH0(因为我已经写了这个答案)。

class Basic(object):

    def process(self, *values):
        for v in values:
            v = int(v)
            print v

b = Basic()
b.process(4, 5, 6)