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”来进行标识。