Python 'takes exactly 1 argument (2 given)' Python error

Python初学,定义class的函数之后,在调用的时候出现“'takes exactly 1 argument (2 given)' Python error”。

查询Interesting 'takes exactly 1 argument (2 given)' Python error 之后,原来在python中,在使用instance调用其class的方法的时候,是相当与在调用中加入本身作为第一个参数的。如下:

a.method(k)

就相当与:

a.method(a, k)

所以,在对函数进行定义的时候,需要在函数内部参数中第一个定义为self,如:

class Person():

    def method(self, k):

        ...

如果想作为静态函数调用,可以在定义函数上方加上“@staticmethod”来进行标识。

你可能感兴趣的:(Python学习)