Вам необходимо принять self
в качестве аргумента или использовать декоратор staticmethod
.
class Corrector:
def correctAll(self, dir):
print "ok"
или
class Corrector:
@staticmethod
def correctAll(dir):
print "ok"
Различие между ними заключается в том, что вы хотите, чтобы метод имел доступ к экземпляру, к которому он обращен, или нет. Если это так, то используйте первый, и экземпляр будет доступен как self
. В противном случае вы можете использовать второй.
Методы Python работают, явно принимая объект, с которым они связаны, в качестве первого аргумента (self
здесь каноничен, но на самом деле может быть чем угодно) Этот аргумент затем неявно передается, когда происходит вызов.