我想寫一個類來解決使用遞歸的階乘。在python中使用類的階乘的錯誤
這裏是我的代碼:
class Factorial:
def __init__(self,n):
self.n = n
def factorial(self):
if self.n == 0:
return 1
else:
return self.n * self.factorial(self.n - 1)
我叫它是:
fact = Factorial(4)
fact.factorial()
我得到這個錯誤:
Traceback (most recent call last):
File "factorial.py", line 13, in <module>
fact.factorial()
File "factorial.py", line 10, in factorial
return self.n * self.factorial(self.n - 1)
TypeError: factorial() takes exactly 1 argument (2 given)
感謝
你只有聲明瞭'factorial'功能採取'self'說法。 –
是否有任何具體的原因,你正在做這個與類而不是一個正常的功能? – jwodder