我在codewars上創建一個簡單的類時遇到了問題。我收到以下錯誤:init 3.5函數中的Python 3.5錯誤沒有引用足夠的參數
Traceback: in TypeError: __init__() takes exactly 3 arguments (2 given)
我意識到我與self
參數一起使用兩個參數提供的初始化函數。當我從我的課創建我的對象時,我爲這兩個參數提供了兩個字符串。我不確定我在做什麼錯。它是codewars瀏覽器嗎?我很感激任何幫助。請看下面:
class Person:
def __init__(self, name, other_name):
self.name = name
self.other_name = other_name
def greet(self):
return "Hi {0}, my name is {1}".format(self.other_name, self.name)
xy = Person("Raiden", "Donald")
xy.greet()
我已經檢查了關於這個問題的其他問題,它似乎總是問題是,調用類的人沒有必要的參數提供它。不過,我正在那樣做。我很感激任何幫助。
編輯************
值得注意的是,我可以在生產我的正常的Python IDLE上面的代碼。我在codewars窗口中有完全相同的代碼。她的原始codewars問題: 更正此代碼,以便greet函數返回期望值。
class Person:
def __init__(self, name):
self.name = name
def greet(self, other_name):
return "Hi {0}, my name is {1}".format(other_name, name)
無法在Python 3.5.1上重現 – vaultah
你在做什麼代碼大戰的問題。你能發佈鏈接嗎?另外,你確定這是Codewars編輯器窗口中的所有代碼嗎? – idjaw
我編輯了我的原始評論,以包含原始codewars開始代碼加上問題。值得注意的是,我可以重現我在IDLE中張貼的原始代碼,沒有任何錯誤。 – raidboss